Inhaltsverzeichnis

Alle Kapitel aufklappen
Alle Kapitel zuklappen
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 Wiederholungsfragen
318
18 Lambda-Ausdrücke
319
18.1 Hello, Lambda World!
319
18.2 Lambda-Syntax
321
18.3 Generische Lambda-Schnittstellen
326
18.4 Funktionale Programmierung mit Streams
329
18.5 Beispiel: Mitarbeiter sortieren und auswählen
335
18.6 Wiederholungsaufgaben
337
19 Dateien und Verzeichnisse
339
19.1 Klassen- und Schnittstellenüberblick
339
19.2 Dateien und Verzeichnisse ergründen
341
19.3 Dateien und Verzeichnisse bearbeiten
348
19.4 Textdateien lesen und schreiben
351
19.5 Beispiel: Evaluierungsdaten auswerten
354
19.6 Wiederholungsaufgaben und Übungen
358
20 JavaFX
360
20.1 Hello, JavaFX!
360
20.2 Arbeiten mit Steuerelementen
366
20.3 Grafikprogrammierung
374
20.4 Wiederholungsaufgaben und Übungen
380
21 Java-Interna und -Bibliotheken
382
21.1 Java-Compiler und -Interpreter
383
21.2 Der args-Parameter
389
21.3 Die Java-Shell
391
21.4 import
394
21.5 Pakete
396
21.6 Bibliotheken
398
21.7 Module (Jigsaw)
403
21.8 Wiederholungsfragen
405
22 Eine REST-API anbieten und nutzen
406
22.1 Hello, Javalin!
407
22.2 REST-Server zur Aufgabenverwaltung
411
22.3 REST-Client zur Aufgabenverwaltung
418
A Crashkurs IntelliJ IDEA
425
A.1 Benutzeroberfläche
425
A.2 Projekte
432
A.3 Einstellungen
433
B Lösungen
436
B.1 Kapitel 2, »Java-Crashkurs«
436
B.2 Kapitel 4, »Variablenverwaltung«
438
B.3 Kapitel 5, »Operatoren«
440
B.4 Kapitel 6, »Verzweigungen und Schleifen«
441
B.5 Kapitel 7, »Arrays und Listen«
443
B.6 Kapitel 8, »Zeichenketten«
445
B.7 Kapitel 9, »Methoden«
446
B.8 Kapitel 10, »Datum und Uhrzeit«
449
B.9 Kapitel 11, »Exceptions«
450
B.10 Kapitel 12, »Klassen und Records«
452
B.11 Kapitel 13, »Listen, Sets und Maps«
456
B.12 Kapitel 14, »Vererbung«
459
B.13 Kapitel 15, »Schnittstellen«
461
B.14 Kapitel 17, »Generische Klassen und Methoden«
462
B.15 Kapitel 18, »Lambda-Ausdrücke«
462
B.16 Kapitel 19, »Dateien und Verzeichnisse«
465
B.17 Kapitel 20, »JavaFX«
467
B.18 Kapitel 21, »Java-Interna und -Bibliotheken«
469
Index
471