Java ist das Fundament der modernen Softwareentwicklung und Grundlage unzähliger IT-Projekte. Michael Kofler führt Sie in die Programmiersprache ein und vermittelt alle Konzepte, die Sie für den Einstieg brauchen. Von einfachen Beispielen bis zum objektorientierten Programm finden Sie alles übersichtlich und auf den Punkt präsentiert. Aktuell zu Java 25 LTS.
- Eine kompakte Einführung in Java
- Auf einen Blick: Objektorientierte Programmierung, Generics, Vererbung, Bibliotheken und mehr
- Mit Codebeispielen, Übungen und Lösungen zum Selbststudium
Entdecken Sie auch weitere Programmierbücher im praktischen Taschenbuchformat zu Python, C, C++ und mehr.
Aus dem Inhalt:
- Sprachgrundlagen
- Pair Programming mit KI: Java mit Ki-Tools lernen
- Installation von Java und IntelliJ IDEA
- Schleifen, Verzweigungen und Methoden
- Objektorientierung, Vererbungen und Schnittstellen
- Vererbung und Interfaces
- Exceptions (Fehlerbehandlung
- Umgang mit Datum und Uhrzeit
- Listen, Sets und Maps
- Lambda-Ausdrücke
- Generische Klassen und Methoden
- Einführung in GUIs mit JavaFX
Mit Codebeispielen, Übungen und Lösungen zum Selbststudium
Autorentext
Michael Kofler hat Telematik an der TU Graz studiert und ist einer der erfolgreichsten deutschsprachigen IT-Fachbuchautoren. Zu seinen Themengebieten zählen neben Linux auch IT-Sicherheit, Python, Swift, Java und der Raspberry Pi. Er ist Entwickler, berät Firmen undarbeitet als Lehrbeauftragter.
Inhalt
Vorwort ... 13
1. Hello, World! ... 17
1.1 ... Einführung ... 17
1.2 ... Java installieren ... 18
1.3 ... IntelliJ IDEA ... 21
1.4 ... Der Hello-World-Code ... 26
1.5 ... Visual Studio Code ... 30
2. Java-Crashkurs ... 32
2.1 ... Die Idee des objektorientierten Programmierens ... 32
2.2 ... Java-Syntax ... 37
2.3 ... Wiederholungsfragen ... 42
3. Java lernen mit KI-Unterstützung ... 44
3.1 ... Der richtige Einsatz von KI-Tools ... 45
3.2 ... Mein Programm funktioniert nicht! Warum? ... 46
3.3 ... Ich möchte diese Aufgabe lösen. Hilf mir! ... 49
3.4 ... Sprachkonzepte erklären ... 51
4. Variablenverwaltung ... 52
4.1 ... Variablen ... 52
4.2 ... Elementare Datentypen ... 56
4.3 ... Literale ... 63
4.4 ... Variablen einlesen und ausgeben ... 65
4.5 ... Variablen im größeren Java-Kontext ... 68
4.6 ... Konstanten und Enums ... 74
4.7 ... Wiederholungsfragen und Übungen ... 76
5. Operatoren ... 77
5.1 ... Überblick ... 77
5.2 ... Details und Sonderfälle ... 79
5.3 ... Wiederholungsfragen ... 86
6. Verzweigungen und Schleifen ... 87
6.1 ... if-Verzweigungen ... 88
6.2 ... if-Kurzschreibweise (ternärer Operator) ... 93
6.3 ... switch-Verzweigungen ... 94
6.4 ... for-Schleifen ... 97
6.5 ... for-each-Schleifen ... 104
6.6 ... while- und do-while-Schleifen ... 105
6.7 ... break und continue ... 107
6.8 ... Wiederholungsfragen und Übungen ... 109
7. Arrays und Listen ... 111
7.1 ... Syntax ... 111
7.2 ... Mit Arrays arbeiten ... 117
7.3 ... Listen ... 121
7.4 ... Wiederholungsfragen und Übungen ... 122
8. Zeichenketten ... 124
8.1 ... Der Datentyp char ... 124
8.2 ... Die String-Klasse ... 126
8.3 ... Formatierung und Konvertierung ... 134
8.4 ... Die StringBuilder-Klasse ... 140
8.5 ... Beispiele ... 141
8.6 ... Wiederholungsfragen und Übungen ... 144
9. Methoden ... 145
9.1 ... Einführung ... 146
9.2 ... Parameterliste ... 149
9.3 ... Rückgabewert und return ... 154
9.4 ... Rekursion ... 157
9.5 ... Tipps zum richtigen Einsatz von Methoden ... 158
9.6 ... Beispiele ... 159
9.7 ... Wiederholungsfragen und Übungen ... 169
10. Datum und Uhrzeit ... 172
10.1 ... Datum und Zeit seit Java 8 ... 173
10.2 ... Veraltete Datums- und Zeitklassen (Date, Calendar) ... 182
10.3 ... Wiederholungsfragen und Übungen ... 190
11. Exceptions ... 191
11.1 ... Exception-Klassen ... 192
11.2 ... try-catch ... 194
11.3 ... Fehleranfällige Methoden deklarieren (throws) ... 198
11.4 ... Selbst Exceptions auslösen (throw) ... 199
11.5 ... Beispiel ... 200
11.6 ... Wiederholungsfragen und Übungen ... 202
12. Klassen und Records ... 204
12.1 ... Eigene Klassen entwickeln ... 205
12.2 ... Der Konstruktor ... 215
12.3 ... get- und set-Methoden (Getter/Setter) ... 219
12.4 ... Records ... 222
12.5 ... UML-Diagramme ... 226
12.6 ... Beispiel: Bücher und Kapitel ... 227
12.7 ... Wiederholungsfragen und Übungen ... 231
13. Listen, Sets und Maps ... 234
13.1 ... Interna: Schnittstellen und generische Klassen ... 235
13.2 ... Listen ... 238
13.3 ... Sets ... 240
13.4 ... Maps ... 242
13.5 ... Beispiel: Polygone ... 245
13.6 ... Beispiel: Schachfigur Springer ... 249
13.7 ... Beispiel: Mitarbeiter verwalten ... 255
13.8 ... Wiederholungsfragen und Übungen ... 259
14. Vererbung ... 260
14.1 ... Grundlagen ... 260
14.2 ... Beispiel: Klassen für Fahrräder ... 265
14.3 ... Finale und abstrakte Klassen ... 269
14.4 ... Die Object-Klasse ... 276
14.5 ... Beispiel: Schachfiguren ... 281
14.6 ... Wiederholungsfragen und Übungen ... 285
15. Schnittstellen ... 288
15.1 ... interface und implements ... 288
15.2 ... Beispiel: Geometrische Figuren ... 293
15.3 ... Wiederholungsfragen und Übungen ... 297
16. Geschachtelte und versiegelte Klassen ... 298
16.1 ... Geschachtelte Klassen ... 299
16.2 ... Anonyme Klassen ... 301
16.3 ... Versiegelte Klassen und Schnittstellen ... 307
17. Generische Klassen und Methoden ... 310
17.1 ... Einführung ... 310
17.2 ... Deklaration generischer Klassen und Schnittstellen ... 312
17.3 ... Deklaration generischer Methoden ... 314
17.4 ... Wildcards ... 315
17.5 ... Wiederholungs…