
Aus der Kooperation von zwei erfahrenen Autoren und Programmierern (Bernhard Baltes-Götz & Johannes Götz, an einer Universität bzw. in der Software-Branche tätig) entstand ein Manuskript (E-Book) zur Einführung in Java, das hier im PDF-Format kostenlos zur Verfügung steht. Die LeseserInnen müssen keine Vorkenntnisse mitbringen, aber viel Motivation und Zeit. Schließlich ist es keine Kleinigkeit, eine universelle und mächtige Programmiersprache wie Java zu erlernen.
Hier finden Sie zum Herunterladen (bzw. zur PDF-Anzeige durch Ihren Browser):
- den Text als PDF-Dokument (Stand: 20.12.2025, 1362 Seiten, ca. 25 MB)
- ein ZIP-Archiv mit Beispielen und Lösungsvorschlägen zu den Übungsaufgaben (für IntelliJ IDEA Community, ca. 3 MB)
Der Text in Mozillas PDF-Anzeige:
Themenliste:
- Objektorientierte Analyse
- Anwendungsentwicklung mit IntelliJ IDEA
- Elementare Sprachelemente
Variablen und primitive Datentypen, Operatoren und Ausdrücke, Anweisungen, Kontrollstrukturen (Verzweigungen, Wiederholungen) - Klassen und Objekte
- Arrays, Klassen für Zeichenfolgen, Wrapper-Klassen, Aufzählungstypen, Record-Klassen
- Pakete und Module (JPMS) verwenden und erstellen, Zugriffsmodifikatoren, JAR-Dateien
- Vererbung und Polymorphie
Klassen ableiten, Überschreiben von Methoden, abstrakte Methoden und Klassen, spätes Binden, finalisierte Klassen und Methoden - Generische Klassen, Schnittstellen und Methoden
- Interfaces implementieren und definieren, Verwendung als Referenztypen, Annotationen
- Kollektionen (Listen, Mengen, Abbildungen)
- Ausnahmebehandlung
Ausnahmen abfangen, werfen, deklarieren und definieren, automatisierte Freigabe von Ressourcen, Techniken der Fehlerbehandlung - Funktionales Programmieren
Lambda-Ausdrücke, intermediäre und terminale Stromoperationen, Gatherer-API - GUI-Programmierung mit JavaFX bzw. OpenJFX (auf dem Stand von Java 21)
Layout-Definition per Programm und FXML, Verwendung des Scene Builders, Properties, Ereignisbehandlung, Model-View-Controller – Architektur, Steuerelemente und Layoutmanager - Ein-/Ausgabe über Datenströme (auf dem Stand von Java 21)
Byte- und Zeichenströme, Filterklassen, Verwaltung von Dateien und Verzeichnissen - Multithreading (auf dem Stand von Java 21)
Koordination von Threads, Threadpool, Fork-Join – Framework, Aufgabenparallelität mit der Klasse CompletableFuture<T>, reaktive Ströme, virtuelle Threads - Netzwerkprogrammierung (auf dem Stand von Java 17)
HTTP-Protokoll zum Abruf von Daten nutzen, Socket-Programmierung - Datenbankprogrammierung mit JDBC und JPA (auf dem Stand von Java 17)
Das Skript behandelt (auf über 200 Seiten) die Datenbankprogrammierung mit der Java Database Connectivity (JDBC) und mit dem Java Persistence API (JPA) unter Verwendung von Hibernate als JPA-Implementation.