Probeklausur

Werbung
Probeklausur Java2
Aufgabe Fehlerbehandlung
Wofür wird der try-catch Bereich benötigt? Zeigen Sie die Verwendung an einem Beispiel ihrer
Wahl. Welche Bedeutung hat der optinale finally-Bereich?
Aufgabe Streams
Was unterscheidet Streams von der "bishergien" Art Datenquellen einzulesen. Welche Methoden
spielen die Schlüsselrolle bei der Verwendung von Streams. Stellen Sie diese kurz vor.
Aufgabe Rekursion
Erklären Sie die Funktionsweise der Rekursion an einem selbst-gewähltem Beispiel.
Aufgabe Threads
Warum werden in modernen Systeme Threads verwendet? In welchem Zusammenhang stehen diese
zu Prozessen?
Aufgabe Datenstrukturen
Erklären sie den Unterschied zwischen einer ArrayList, einer Hashmap und der LinkedList.
Aufgabe Webseite einlesen
Der folgende Code soll die Webseite dhbw-mannheim.de einlesen und auf der Console ausgeben.
Ergänzen Sie die noch fehlende2Zeilen (siehe Fragezeigen):
public static void main(String[] args) throws IOException {
??? URL url = new URL("http://www.dhbw-mannheim.de");
BufferedReader reader=new BufferedReader(new
InputStreamReader(url.openStream()));
while (reader.ready())
{
??? System.out.println(reader.readLine());
}
}
Aufgabe Sortieralgorithmen
Stellen Sie die Sortierschritte der Algorithmen Mergesort, Quicksort, Bubblesort und Insertionsort
an folgender unsortierter Zahlenreihe dar:
4321
Es soll von links nach rechts in aufsteigender Reihenfolge sortiert werden.
Aufgabe Addier-Applikation
Ein Programm (mit Oberfläche) zum Addieren zweier Zahlen soll programmiert werden. Ordnen
Sie die Bestandtteile des Programms in die richtige Reihenfolge:
mAusgabe=new JLabel("Ausgabe");
button.addActionListener(new PlusListener(mInput1, mInput2,
mAusgabe));
panel.add(mInput1);
panel.add(new JLabel("+"));
panel.add(mInput2);
panel.add(mAusgabe);
panel.add(button);
frame.add(panel,BorderLayout.CENTER);
frame.setSize(600, 400);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
package gui;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import
import
import
import
import
javax.swing.JButton;
javax.swing.JFrame;
javax.swing.JLabel;
javax.swing.JPanel;
javax.swing.JTextField;
public AddierApp()
{
JFrame frame=new JFrame("AddierApp");
JPanel panel=new JPanel();
mInput1=new JTextField("zahl1");
mInput2=new JTextField("zahl2");
JButton button=new JButton("Ergebnis");
public class AddierApp implements ActionListener {
JTextField mInput1;
JTextField mInput2;
JLabel mAusgabe;
@Override
public void actionPerformed(ActionEvent e)
{
try{
int zahl1=Integer.parseInt(mInput1.getText());
int zahl2=Integer.parseInt(mInput2.getText());
int ergebnis=zahl1+zahl2;
mAusgabe.setText(Integer.toString(ergebnis));
}catch (NumberFormatException exception)
{
mAusgabe.setText("keine Zahl!");
}
}
public static void main(String[] args) {
AddierApp a=new AddierApp();
}
}
auseinandernehmen (pseudocode vorgeben)
Aufgabe Sortieren und Aufwandangabe
Erstellen Sie den Pseudocode, um zwei gefüllte und sortierte Int-Arrays (sind aufsteigend sortiert)
in ein neues gemeinsames Int-Array einzusortieren (in aufsteigender Reihenfolge). Geben Sie den
Aufwand ihres Algorithmus' in O-Notation an.
Herunterladen