Javafragen zum Lernen und Überprüfen grundlegender Javakenntnisse.
Die Fragen sind in den folgenden Niveaus geordnet:
| Stufe | Beschreibung | Kursniveau |
|---|---|---|
| 1 | Anfänger | 1. Semester |
| 2 | Fortgeschrittener | 2. Semester |
| 3 | Guru |
Die Fragen sind mit Schwierigkeitsgraden versehen
| Grad | Beziehung zum Kurs |
|---|---|
| leicht | leichter als in der Klausur gefordert |
| mittel | Klausurniveau |
| schwer | Jenseits der in der Klausur geforderten Kenntnisse |
Die Antworten werden immer gleichzeitig mit einer neuen Frage veröffentlicht.
Weitere Resourcen
- Java Tutorial Hub: Englischsprachiger Test. 10 Minuten Laufzeit
- 1. Fragen für Javaeinsteiger
- 1.1 Starten einer Anwendung:
- 1.2 Modifizierer (Modifier): Warum darf eine Methode nicht "abstract" und "final" gleichzeitig sein?
- 1.3 Java-Befehle: Welche drei Dateiextensionen (Dateitypen) werden beim Übersetzen, Packen, Bündeln und Ausführen benutzt?
- 1.4 jar: Wozu dient das Hilfprogramm jar im Java SDK?
- 1.5 jar: java -jar Option
- 1.6 jar versus zip
- 1.7 Typkonversion: Casten
- 1.8 Kommentieren von Javaprogrammen
- 1.9 javadoc
- 1.10 Methoden Implementieren und Dokumentieren
- 1.11 Konstruktoren
- 1.12 Konstruktoren, Abfolge
- 1.13 Schlüsselwort this
- 1.14 Zuweisungen mit dem Datentyp char
- 1.15 Konstruktoren und Datenkapselung
- 1.16 Der Modifizierer "static" in Javamethoden
- 1.17 Unterscheidung überladener Methoden
- 1.18 Anzahl von Instanzen (Objekte) erkennen
- 1.19 new Operator
- 1.20 Wo werden Datenstrukturen mit dem new Operator angelegt?
- 1.21 Lebensdauer lokaler Variablen
- 1.22 Instanzvariablen und Klassenvariablen
- 1.23 Dereferenzieren von Objekten
- 1.24 Schlüsselwörter
- 1.25 Codetransformation
- 1.26 Felder (Implementieren)
- 1.27 Codetransformation
- 1.28 Erste ganze Zahl größer Null die man noch mit int darstellen kann aber nicht mit float Typen
- 1.29 Anwendungen des Java Development Kits
- 1.30 Syntax von Zuweisungen
- 1.31 Sichere Zuweisungen
- 1.32 Syntax von Bezeichnern
- 1.33 Nicht erlaubte Namen von Bezeichnern
- 1.34 Codetransformation von Schleifen
- 1.35 Codetransformation switch-case
- 1.36 Implementierung einer Methode
- 1.37 Syntax des Methodenkopf in Java
- 1.38 Standardkonstruktor und selbst implementierte Konstrukturen
- 1.39 Dokumentationskommentare
- 1.40 Anwendung der Datenkapselung in Java
- 1.41 Überladene Methoden
- 1.42 Überschriebene Methoden
- 1.43 Pakete und Sichtbarkeit von Klassen und Methoden
- 1.44 Felder, Schleifen, Referenzen
- 1.45 Parameterübergaben und Rückgaben von Werten
- 1.46 Vererbung, Konstruktoren, Schlüsselworte
- 1.47 Vorerst nur eine Antwort...
- 2. Fragen für Fortgeschrittene
- 2.1 Abstrakte Klassen
- 2.2 Schnittstellen und Überschreiben von Methoden
- 2.3 Oberklassen und Schnittstellen in UML
- 2.4 Java Collections Framework: Listen
- 2.5 Bewertung der Klasse ArrayList
- 2.6 Iterieren über den Typ TreeMap
- 2.7 Generics: Typprüfung
- 2.8 Quicksort
- 2.9 Quicksort, Pivotelement
- 2.10 Ungünstige Zahlenreihen für den Quicksort
- 2.11 Swing Layoutmanager
- 2.12 Relatives Layoutmanagement versus absolutes Layoutmanagement
- 2.13 Binärbäume
- 2.14 AVL-Bäume
- 2.15 Bruder-Bäume
- 2.16 Komplexitätsbetrachtungen
- 2.17 Nebenläufigkeit in einem Javaprogramm (Threading)
- 2.18 Die Methode Thread.join()
- 2.19 Prozesse und Threads
- 2.20 Exceptions (Ausnahmen)
- 2.21 Checked Exceptions
- 2.22 Assertions (Annahmen, Zusicherungen)
- 2.23 Anwendung von Assertions
- 2.24 Pakete, Importdeklarationen
- 2.25 Welcher Layoutmanager wird hier benutzt?
- 2.26 Klasse zu gegebenen Schnittstellen implementieren
- 2.27 Schnittstellen und Konstruktoren
- 2.28 Java Collections: HashSet und TreeSet
- 2.29 Klasse TreeMap
- 2.30 Java Collections und Generezität
- 2.31 Generics: Typprüfung
- 2.32 Heapsort, Baumpräsentation, Heapbedingung
- 2.33 Erklärung der Heapbedingung
- 2.34 Swing: Layoutmanager für drei Komponenten
- 2.35 Flowlayout-Manager versus Boxlayout-Manager
- 2.36 Swing, vertikale Anordnung von Komponenten
- 2.37 Swing, Implementieren einer Adapterklasse
- 2.38 Adapterklassen versus Schnittstellen
- 2.39 Innere und anonyme Klassen
- 2.40 Erweitern eines AVL-Baums
- 2.41 Definition von Brüdern (bei Brüderbäumen)
- 2.42 Binär- und Bruderbäume
- 2.43 Komplexitätsbetrachtungen
- 2.44 Thread.start() und Thread.run()
- 2.45 Zustände eines Java-Thread
- 2.46 Komplexitätsbetrachtungen
- 2.47 Erkennen von Ausnahmen im Quellcode
- 2.48 Programmablauf bei Ausnahmen
- 2.49 Assertions versus Exceptions (Annahmen, Zusicherungen versus Ausnahmen)
- 2.50 Benutzung verschiedener Ausnahmen (Exception) und Zusicherungen, Annahmen (Assertions)
- 2.51 Implementieren von Assertions (Annahmen)
- 2.52 Programmablauf bei mehrern try-catch-Blöcken
- 2.53 Programmablauf bei unterschiedlichen try-catch Blöcken
- 2.54 Programmablauf bei mehreren catch Blöcken
- 2.55 Behandeln und Weiterreichen einer Ausnahme
- 2.56 Antwort zu Frage 2.55
