Java Verständnistest 22-09-2025

0.0(0)
studied byStudied by 20 people
full-widthCall with Kai
GameKnowt Play
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/59

flashcard set

Earn XP

Description and Tags

gooner mosimann der hurensohn

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

60 Terms

1
New cards

Unterschied zwischen BufferedReader und Scanner beim Einlesen einer Datei?

BufferedReader liest schneller zeilenweise Strings, Scanner kann flexibler einzelne Tokens (int, double, String) auslesen, ist aber langsamer.

2
New cards

Wie wandelt man den String "1995" in einen int um?

Integer.parseInt("1995");

3
New cards

Warum ist eine ArrayList oft besser geeignet als ein Array?

ArrayList ist dynamisch veränderbar, Array hat fixe Länge.

4
New cards

Was macht SwingUtilities.invokeLater() im main?

Startet GUI-Code im Event Dispatch Thread, sorgt für thread-sichere GUI.

5
New cards

Warum braucht man bei einer JTable fast immer ein JScrollPane?

Damit man bei vielen Zeilen/Spalten scrollen kann, sonst werden Inhalte abgeschnitten.

6
New cards

Unterschied zwischen DefaultTableModel und einem eigenen TableModel?

DefaultTableModel = einfache Standardlösung; eigenes TableModel = flexible Anpassung an spezielle Datenquellen (z. B. DB).

7
New cards

Unterschied zwischen Klasse und Objekt?

Klasse = Bauplan, Objekt = konkrete Instanz dieser Klasse.

8
New cards

Was gibt folgender Code aus: class A { public void hallo() { System.out.println("A"); } } class B extends A { public void hallo() { System.out.println("B"); } } A obj = new B(); obj.hallo();

Ausgabe: B.

9
New cards

Warum sind Getter und Setter wichtig?

Weil sie Kapselung ermöglichen: Variablen bleiben privat, Zugriff erfolgt kontrolliert.

10
New cards

Was gibt folgender Code aus: ArrayList<Object> al = new ArrayList<>(); al.add("Hallo"); al.add(123); for(Object o : al) { System.out.println(o.getClass().getName()); }

Ausgabe: java.lang.String und java.lang.Integer.

11
New cards

Was bedeutet Polymorphie in Java?

Ein Objekt kann unterschiedliche Formen annehmen; Methodenaufrufe richten sich nach der tatsächlichen Objektklasse, nicht der Referenz.

12
New cards

Was macht der Code: DriverManager.getConnection("jdbc:mysql://localhost:3306/testdb","root",""); System.out.println("OK");

Es wird eine Verbindung zur Datenbank aufgebaut und "OK" ausgegeben, falls erfolgreich.

13
New cards

Unterschied zwischen Statement und PreparedStatement?

Statement = direktes SQL, unsicher; PreparedStatement = SQL mit Platzhaltern (?), sicherer und effizienter.

14
New cards

Was passiert bei: ResultSet rs = stmt.executeQuery("SELECT name FROM schueler"); while(rs.next()) { System.out.println(rs.getString("name")); }

Alle Namen aus der Tabelle "schueler" werden zeilenweise ausgegeben.

15
New cards

Was macht SELECT last_insert_id() in MySQL?

Gibt die ID des zuletzt eingefügten Datensatzes zurück.

16
New cards

Was versteht man unter CRUD-Operationen?

Create, Read, Update, Delete – Grundoperationen einer DB.

17
New cards

Was gibt folgender Code aus: Object o = "Hallo"; String s = (String) o; System.out.println(s.length());

Ausgabe: 5.

18
New cards

Was passiert, wenn man ein Objekt in den falschen Typ castet?

Es entsteht eine ClassCastException (Laufzeitfehler).

19
New cards

Was gibt folgender Code aus: HashMap<Integer,String> hm = new HashMap<>(); hm.put(1,"Apfel"); hm.put(2,"Banane"); System.out.println(hm.get(2));

Ausgabe: Banane.

20
New cards

Unterschied zwischen ArrayList und HashMap?

ArrayList = speichert Werte in Reihenfolge, Zugriff über Index; HashMap = speichert Key-Value-Paare, Zugriff über Schlüssel.

21
New cards

Warum ist HashMap schneller als ArrayList beim Suchen?

Weil HashMap mit Hashing arbeitet (direkter Zugriff), ArrayList linear durchsuchen muss.

22
New cards

Was passiert bei: abstract class DB { abstract void insert(String t); } class DBTest extends DB { void insert(String t) { System.out.println("Insert: "+t); } } new DBTest().insert("Schueler");

Es wird "Insert: Schueler" ausgegeben.

23
New cards

Warum benutzt man abstrakte Klassen für Datenbankschnittstellen?

Um eine gemeinsame Struktur/Bauplan vorzugeben, ohne konkrete Implementierung.

24
New cards

Was gibt folgender Code aus: HashMap<String,Object> row = new HashMap<>(); row.put("Name","Meier"); row.put("Jahrgang",1999); System.out.println(row.get("Name"));

Ausgabe: Meier.

25
New cards

Warum gibt select() in dbGeneric eine ArrayList<HashMap<String,Object>> zurück?

Weil jede Zeile eine Map aus Spaltenname→Wert ist und mehrere Zeilen als ArrayList gespeichert werden.

26
New cards

Vorteil von spezialisierten Klassen wie dbLernende im Vergleich zu dbGeneric?

Mehr Klarheit und Typsicherheit; direkter Zugriff auf Felder statt nur über Strings.

27
New cards

Was gibt folgender Code aus: DefaultTableModel model = new DefaultTableModel(); model.addColumn("ID"); model.addRow(new Object[]{1}); System.out.println(model.getValueAt(0,0));

Ausgabe: 1.

28
New cards

Was gibt folgender Code aus: String[] cols = {"Name","Vorname"}; String[][] data = {{"Müller","Hans"},{"Meier","Anna"}}; JTable t = new JTable(data, cols); System.out.println(t.getRowCount());

Ausgabe: 2.

29
New cards

Was gibt folgender Code aus: ArrayList<String> liste = new ArrayList<>(); liste.add("Hans"); liste.add("Peter"); System.out.println(liste.size());

Ausgabe: 2.

30
New cards

Was gibt folgender Code aus: String line = "10;Meier;Anna;anna.meier@example.com"; String[] parts = line.split(";"); System.out.println(parts[2]);

Ausgabe: Anna.

31
New cards

Wie liest man eine Textdatei zeilenweise in Java ein?

Mit FileReader + BufferedReader und readLine().

32
New cards

Was muss man nach dem Arbeiten mit einem FileReader/BufferedReader tun?

Den Reader schließen (close()), um Ressourcen freizugeben.

33
New cards

Wie kann man eine CSV-Datei in Java auftrennen?

Mit String.split(";") oder Scanner mit Delimiter.

34
New cards

Was ist ein Separator in einer CSV-Datei?

Ein Zeichen, das Spalten trennt, z. B. ";" oder ",".

35
New cards

Warum sollte man Exceptions beim Datei-Einlesen behandeln?

Weil Datei nicht existieren kann oder Fehler beim Lesen auftreten können.

36
New cards

Was ist der Event Dispatch Thread (EDT) in Swing?

Der spezielle Thread, in dem alle GUI-Aktionen ausgeführt werden.

37
New cards

Warum sollte man GUI-Updates nie im main-Thread machen?

Weil die Oberfläche sonst blockiert und nicht mehr reagiert.

38
New cards

Wie bindet man eine JTable an eine Datenbank?

Durch ein TableModel, das Daten aus der DB liest und in die Tabelle schreibt.

39
New cards

Was passiert, wenn man JTable ohne TableModel benutzt?

Die Tabelle zeigt nur statische Daten, keine dynamische Verbindung zur DB.

40
New cards

Warum benutzt man ein JScrollPane mit JTable oder JTextArea?

Weil sonst Inhalte abgeschnitten werden, wenn sie größer sind als die Anzeige.

41
New cards

Was ist der Unterschied zwischen extends und implements in Java?

extends = Vererbung einer Klasse, implements = Implementierung eines Interfaces.

42
New cards

Was ist Vererbung?

Mechanismus, bei dem eine Klasse Eigenschaften und Methoden einer anderen übernimmt.

43
New cards

Was ist Überschreiben (Overriding)?

Wenn eine Subklasse eine Methode der Superklasse neu implementiert.

44
New cards

Was ist Überladen (Overloading)?

Wenn mehrere Methoden denselben Namen haben, aber unterschiedliche Parameterlisten.

45
New cards

Was ist der Unterschied zwischen null und 0 in Java?

null = keine Referenz auf ein Objekt, 0 = Zahl.

46
New cards

Was passiert, wenn man versucht, auf ein null-Objekt eine Methode aufzurufen?

Es entsteht eine NullPointerException.

47
New cards

Was ist eine Primary Key in einer Datenbank?

Eindeutiger Schlüssel, identifiziert jeden Datensatz eindeutig.

48
New cards

Warum sind PreparedStatements sicherer gegen SQL-Injection?

Weil Parameter gebunden werden und nicht als String ins SQL eingefügt werden.

49
New cards

Was macht rs.next() in einem ResultSet?

Verschiebt den Cursor zur nächsten Zeile und liefert true, wenn vorhanden.

50
New cards

Wie greift man im ResultSet auf Spalten zu?

Mit rs.getString("spaltenname") oder rs.getInt("spaltenname").

51
New cards

Was ist eine Foreign Key?

Ein Fremdschlüssel, verweist auf Primary Key einer anderen Tabelle.

52
New cards

Wie kann man in Java prüfen, ob eine HashMap einen Key enthält?

Mit map.containsKey(key).

53
New cards

Was passiert, wenn man in einer HashMap denselben Key zweimal put()?

Der alte Wert wird überschrieben.

54
New cards

Wie greift man auf alle Keys in einer HashMap zu?

Mit map.keySet().

55
New cards

Wie greift man auf alle Values in einer HashMap zu?

Mit map.values().

56
New cards

Warum sind HashMaps nicht sortiert?

Weil sie intern Hashing benutzen und keine Reihenfolge garantieren.

57
New cards

Was ist eine abstrakte Methode?

Eine Methode ohne Implementierung, die in Subklassen überschrieben werden muss.

58
New cards

Was passiert, wenn eine Klasse eine abstrakte Methode nicht implementiert?

Die Klasse selbst muss abstrakt sein.

59
New cards

Was ist der Unterschied zwischen abstract class und interface?

abstract class kann Attribute und Methoden haben, interface nur Konstanten und abstrakte Methoden (bis Java 7).

60
New cards

Warum gibt man Datenbankzeilen oft als HashMap<String,Object> zurück?

Weil Spaltennamen Strings sind und Werte beliebige Typen sein können.