- Broschiertes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
Unser kompletter Java-Grundkurs für die Jackentasche. Aktuell zu Java 11! Dieses Buch führt Sie in wohlüberlegten Schritten in die Sprache Java ein - und in alle Konzepte, die Sie dafür brauchen. Auf dem Fundament aus Java-Syntax und objektorientierter Programmierung bauen Sie auf und lernen das Collections-Framework, Generics, Lambdas u. v. m. kennen. Alle Codebeispiele sind im Unterricht erprobt; Aufgaben und Lösungen unterstützen Sie beim Lernen. Auch zum Auffrischen und Nachschlagen ideal, da Sie jedes Thema leicht finden und separat bearbeiten können.
Aus dem…mehr
Andere Kunden interessierten sich auch für
- Christian UllenboomCaptain CiaoCiao erobert Java39,90 €
- Christian SilberbauerEinstieg in Java und OOP34,99 €
- Thomas TheisEinstieg in C++24,90 €
- Philip AckermannSchrödinger programmiert Java49,90 €
- Arne BoockmeyerFit fürs Studium - Informatik24,90 €
- Michael KoflerSwift 549,90 €
- Alexander SalvanosProfessionell entwickeln mit Java EE 859,90 €
Unser kompletter Java-Grundkurs für die Jackentasche. Aktuell zu Java 11! Dieses Buch führt Sie in wohlüberlegten Schritten in die Sprache Java ein - und in alle Konzepte, die Sie dafür brauchen. Auf dem Fundament aus Java-Syntax und objektorientierter Programmierung bauen Sie auf und lernen das Collections-Framework, Generics, Lambdas u. v. m. kennen. Alle Codebeispiele sind im Unterricht erprobt; Aufgaben und Lösungen unterstützen Sie beim Lernen. Auch zum Auffrischen und Nachschlagen ideal, da Sie jedes Thema leicht finden und separat bearbeiten können.
Aus dem Inhalt:
SprachgrundlagenObjektorientierungFehler und AusnahmenVererbungUmgang mit Datum und UhrzeitZugriff auf DateienLambda-AusdrückeUnit-TestsGenerische Klassen und MethodenListen, Maps und IteratorenAnnotationsEin einfaches GUI mit JavaFXModularisierungCrashkurs IntelliJ IDEA
Aus dem Inhalt:
SprachgrundlagenObjektorientierungFehler und AusnahmenVererbungUmgang mit Datum und UhrzeitZugriff auf DateienLambda-AusdrückeUnit-TestsGenerische Klassen und MethodenListen, Maps und IteratorenAnnotationsEin einfaches GUI mit JavaFXModularisierungCrashkurs IntelliJ IDEA
Produktdetails
- Produktdetails
- Rheinwerk Computing
- Verlag: Rheinwerk Verlag
- Artikelnr. des Verlages: 459/06958
- 3., erw. Aufl.
- Seitenzahl: 443
- Erscheinungstermin: 24. Mai 2019
- Deutsch
- Abmessung: 190mm x 126mm x 26mm
- Gewicht: 493g
- ISBN-13: 9783836269582
- ISBN-10: 3836269589
- Artikelnr.: 55357243
- Herstellerkennzeichnung Die Herstellerinformationen sind derzeit nicht verfügbar.
- Rheinwerk Computing
- Verlag: Rheinwerk Verlag
- Artikelnr. des Verlages: 459/06958
- 3., erw. Aufl.
- Seitenzahl: 443
- Erscheinungstermin: 24. Mai 2019
- Deutsch
- Abmessung: 190mm x 126mm x 26mm
- Gewicht: 493g
- ISBN-13: 9783836269582
- ISBN-10: 3836269589
- Artikelnr.: 55357243
- Herstellerkennzeichnung Die Herstellerinformationen sind derzeit nicht verfügbar.
Kofler, MichaelDr. Michael Kofler studierte Telematik an der TU Graz. Er zählt zu den erfolgreichsten und vielseitigsten Computerbuchautoren im deutschen Sprachraum. Zu seinen Themengebieten zählen neben Linux auch macOS, MySQL, KVM, Visual Basic und Excel-VBA. Viele seiner Bücher wurden übersetzt. Michael Kofler arbeitet auch als Software-Entwickler, Berater sowie als Lehrbeauftragter an einer Fachhochschule.
Vorwort ... 21
1. Hello World! ... 23
1.1 ... Einführung ... 23
1.2 ... Java und die IntelliJ IDEA installieren ... 29
1.3 ... Installation unter Windows ... 30
1.4 ... Installation unter Ubuntu Linux ... 33
1.5 ... Installation unter macOS ... 34
1.6 ... »Hello World« mit javac und java manuell übersetzen ... 34
1.7 ... Die Java-Shell ... 44
1.8 ... Hello IntelliJ IDEA ... 46
1.9 ... Wiederholungsfragen ... 52
2. Java-Crashkurs ... 53
2.1 ... Die Idee des objektorientierten Programmierens ... 53
2.2 ... Java-Syntax ... 58
2.3 ... Wiederholungsfragen ... 65
3. Variablenverwaltung ... 66
3.1 ... Variablen ... 66
3.2 ... Elementare Datentypen ... 69
3.3 ... Literale ... 77
3.4 ... Variablen im größeren Java-Kontext ... 79
3.5 ... Variablen einlesen und ausgeben ... 85
3.6 ... Konstanten und Enums ... 89
3.7 ... Wiederholungsfragen und Übungen ... 91
4. Operatoren ... 92
4.1 ... Überblick ... 92
4.2 ... Details und Sonderfälle ... 94
4.3 ... Wiederholungsfragen ... 101
5. Verzweigungen und Schleifen ... 102
5.1 ... »if«-Verzweigungen ... 103
5.2 ... »if«-Kurzschreibweise (ternärer Operator) ... 108
5.3 ... »switch«-Verzweigungen ... 109
5.4 ... »for«-Schleifen ... 113
5.5 ... »for-each«-Schleifen ... 119
5.6 ... »while«- und »do-while»-Schleifen ... 120
5.7 ... »break« und »continue« ... 122
5.8 ... Wiederholungsfragen und Übungen ... 124
6. Arrays ... 126
6.1 ... Syntax ... 126
6.2 ... Mit Arrays arbeiten ... 131
6.3 ... Wiederholungsfragen ... 134
7. Zeichenketten ... 136
7.1 ... Der Datentyp »char« ... 136
7.2 ... Die »String«-Klasse ... 138
7.3 ... Formatierung und Konvertierung ... 145
7.4 ... Die »StringBuilder«-Klasse ... 151
7.5 ... Zeichensatzprobleme ... 152
7.6 ... Beispiele ... 154
7.7 ... Wiederholungsfragen und Übungen ... 157
8. Datum und Uhrzeit ... 158
8.1 ... Datum und Zeit seit Java 8 ... 159
8.2 ... Veraltete Datums- und Zeitklassen (Date, Calendar) ... 168
8.3 ... Wiederholungsfragen und Übungen ... 176
9. Methoden ... 177
9.1 ... Einführung ... 178
9.2 ... Parameterliste ... 181
9.3 ... Rückgabewert und »return« ... 187
9.4 ... Rekursion ... 188
9.5 ... Beispiele ... 190
9.6 ... Wiederholungsfragen und Übungen ... 194
10. Exceptions ... 197
10.1 ... Exception-Klassen ... 198
10.2 ... try-catch ... 200
10.3 ... Fehleranfällige Methoden deklarieren (»throws«) ... 203
10.4 ... Selbst Exceptions werfen (»throw«) ... 205
10.5 ... Beispiel ... 206
10.6 ... Wiederholungsfragen und Übungen ... 208
11. Klassen ... 209
11.1 ... Top-Level-Klassen ... 210
11.2 ... Geschachtelte Klassen ... 225
11.3 ... Anonyme Klassen ... 227
11.4 ... Statische geschachtelte Klassen ... 232
11.5 ... Beispiel: Schachfigur Springer ... 233
11.6 ... Beispiel: Bücher und Kapitel ... 238
11.7 ... Wiederholungsfragen und Übungen ... 241
12. Vererbung und Schnittstellen ... 244
12.1 ... Vererbung ... 245
12.2 ... Die »Object«-Klasse ... 255
12.3 ... Vererbungsbeispiel (Schachfiguren) ... 259
12.4 ... Schnittstellen ... 264
12.5 ... Schnittstellenbeispiel (geometrische Figuren) ... 269
12.6 ... Wiederholungsfragen und Übungen ... 272
13. Generische Klassen und Methoden ... 275
13.1 ... Einführung ... 275
13.2 ... Deklaration generischer Klassen und Schnittstellen ... 277
13.3 ... Deklaration generischer Methoden ... 279
13.4 ... Wildcards ... 280
13.5 ... Generics-Beispiel (Comparable) ... 285
13.6 ... Wiederholungsfragen und Übungen ... 290
14. Lambda-Ausdrücke ... 291
14.1 ... Hello Lambda-World! ... 291
14.2 ... Lambda & Co. ... 293
14.3 ... Wiederholungsfragen ... 303
15. Collections ... 305
15.1 ... Einführung ... 305
15.2 ... Die »Iterable«-Schnittstelle ... 312
15.3 ... Die »Collection«-Schnittstelle ... 313
15.4 ... Die »Set«-Schnittstelle ... 315
15.5 ... Die »List«-Schnittstelle ... 320
15.6 ... Die »Stream«-Schnittstelle ... 323
15.7 ... Die »Map«-Schnittstelle ... 327
15.8 ... Wiederholungsfragen und Übungen ... 331
16. Dateien und Verzeichnisse ... 332
16.1 ... Klassen- und Schnittstellenüberblick ... 332
16.2 ... Dateien und Verzeichnisse ergründen ... 334
16.3 ... Dateien und Verzeichnisse bearbeiten ... 342
16.4 ... Textdateien lesen und schreiben ... 344
16.5 ... Wiederholungsaufgaben und Übungen ... 348
17. JavaFX ... 349
17.1 ... Installation ... 349
17.2 ... Einführung ... 350
17.3 ... Arbeiten mit Steuerelementen ... 355
17.4 ... Grafikprogrammierung ... 364
17.5 ... Wiederholungsaufgaben und Übungen ... 371
18. Javadoc ... 372
18.1 ... Javadoc-Syntax ... 372
18.2 ... Das Javadoc-Kommando ... 376
18.3 ... Übung ... 376
19. Pakete, Bibliotheken und Module ... 377
19.1 ... import ... 378
19.2 ... Pakete ... 380
19.3 ... Bibliotheken ... 382
19.4 ... Module (»Jigsaw«) ... 384
19.5 ... Wiederholungsfragen ... 391
A. Crashkurs IntelliJ IDEA ... 392
A.1 ... Benutzeroberfläche ... 392
A.2 ... Projekte ... 398
A.3 ... Einstellungen ... 402
B. Lösungen ... 404
B.1 ... Kapitel 1, »Hello World!« ... 404
B.2 ... Kapitel 2, »Java-Crashkurs« ... 406
B.3 ... Kapitel 3, »Variablenverwaltung« ... 408
B.4 ... Kapitel 4, »Operatoren« ... 410
B.5 ... Kapitel 5, »Verzweigungen und Schleifen« ... 411
B.6 ... Kapitel 6, »Arrays« ... 413
B.7 ... Kapitel 7, »Zeichenketten« ... 414
B.8 ... Kapitel 8, »Datum und Uhrzeit« ... 415
B.9 ... Kapitel 9, »Methoden« ... 415
B.10 ... Kapitel 10, »Exceptions« ... 417
B.11 ... Kapitel 11, »Klassen« ... 418
B.12 ... Kapitel 12, »Vererbung und Schnittstellen« ... 421
B.13 ... Kapitel 13, »Generische Klassen und Methoden« ... 423
B.14 ... Kapitel 14, »Lambda-Ausdrücke« ... 424
B.15 ... Kapitel 15, »Collections« ... 425
B.16 ... Kapitel 16, »Dateien und Verzeichnisse« ... 426
B.17 ... Kapitel 17, »JavaFX« ... 428
B.18 ... Kapitel 18, »Javadoc« ... 430
B.19 ... Kapitel 19, »Pakete, Bibliotheken und Module« ... 430
Index ... 433
1. Hello World! ... 23
1.1 ... Einführung ... 23
1.2 ... Java und die IntelliJ IDEA installieren ... 29
1.3 ... Installation unter Windows ... 30
1.4 ... Installation unter Ubuntu Linux ... 33
1.5 ... Installation unter macOS ... 34
1.6 ... »Hello World« mit javac und java manuell übersetzen ... 34
1.7 ... Die Java-Shell ... 44
1.8 ... Hello IntelliJ IDEA ... 46
1.9 ... Wiederholungsfragen ... 52
2. Java-Crashkurs ... 53
2.1 ... Die Idee des objektorientierten Programmierens ... 53
2.2 ... Java-Syntax ... 58
2.3 ... Wiederholungsfragen ... 65
3. Variablenverwaltung ... 66
3.1 ... Variablen ... 66
3.2 ... Elementare Datentypen ... 69
3.3 ... Literale ... 77
3.4 ... Variablen im größeren Java-Kontext ... 79
3.5 ... Variablen einlesen und ausgeben ... 85
3.6 ... Konstanten und Enums ... 89
3.7 ... Wiederholungsfragen und Übungen ... 91
4. Operatoren ... 92
4.1 ... Überblick ... 92
4.2 ... Details und Sonderfälle ... 94
4.3 ... Wiederholungsfragen ... 101
5. Verzweigungen und Schleifen ... 102
5.1 ... »if«-Verzweigungen ... 103
5.2 ... »if«-Kurzschreibweise (ternärer Operator) ... 108
5.3 ... »switch«-Verzweigungen ... 109
5.4 ... »for«-Schleifen ... 113
5.5 ... »for-each«-Schleifen ... 119
5.6 ... »while«- und »do-while»-Schleifen ... 120
5.7 ... »break« und »continue« ... 122
5.8 ... Wiederholungsfragen und Übungen ... 124
6. Arrays ... 126
6.1 ... Syntax ... 126
6.2 ... Mit Arrays arbeiten ... 131
6.3 ... Wiederholungsfragen ... 134
7. Zeichenketten ... 136
7.1 ... Der Datentyp »char« ... 136
7.2 ... Die »String«-Klasse ... 138
7.3 ... Formatierung und Konvertierung ... 145
7.4 ... Die »StringBuilder«-Klasse ... 151
7.5 ... Zeichensatzprobleme ... 152
7.6 ... Beispiele ... 154
7.7 ... Wiederholungsfragen und Übungen ... 157
8. Datum und Uhrzeit ... 158
8.1 ... Datum und Zeit seit Java 8 ... 159
8.2 ... Veraltete Datums- und Zeitklassen (Date, Calendar) ... 168
8.3 ... Wiederholungsfragen und Übungen ... 176
9. Methoden ... 177
9.1 ... Einführung ... 178
9.2 ... Parameterliste ... 181
9.3 ... Rückgabewert und »return« ... 187
9.4 ... Rekursion ... 188
9.5 ... Beispiele ... 190
9.6 ... Wiederholungsfragen und Übungen ... 194
10. Exceptions ... 197
10.1 ... Exception-Klassen ... 198
10.2 ... try-catch ... 200
10.3 ... Fehleranfällige Methoden deklarieren (»throws«) ... 203
10.4 ... Selbst Exceptions werfen (»throw«) ... 205
10.5 ... Beispiel ... 206
10.6 ... Wiederholungsfragen und Übungen ... 208
11. Klassen ... 209
11.1 ... Top-Level-Klassen ... 210
11.2 ... Geschachtelte Klassen ... 225
11.3 ... Anonyme Klassen ... 227
11.4 ... Statische geschachtelte Klassen ... 232
11.5 ... Beispiel: Schachfigur Springer ... 233
11.6 ... Beispiel: Bücher und Kapitel ... 238
11.7 ... Wiederholungsfragen und Übungen ... 241
12. Vererbung und Schnittstellen ... 244
12.1 ... Vererbung ... 245
12.2 ... Die »Object«-Klasse ... 255
12.3 ... Vererbungsbeispiel (Schachfiguren) ... 259
12.4 ... Schnittstellen ... 264
12.5 ... Schnittstellenbeispiel (geometrische Figuren) ... 269
12.6 ... Wiederholungsfragen und Übungen ... 272
13. Generische Klassen und Methoden ... 275
13.1 ... Einführung ... 275
13.2 ... Deklaration generischer Klassen und Schnittstellen ... 277
13.3 ... Deklaration generischer Methoden ... 279
13.4 ... Wildcards ... 280
13.5 ... Generics-Beispiel (Comparable) ... 285
13.6 ... Wiederholungsfragen und Übungen ... 290
14. Lambda-Ausdrücke ... 291
14.1 ... Hello Lambda-World! ... 291
14.2 ... Lambda & Co. ... 293
14.3 ... Wiederholungsfragen ... 303
15. Collections ... 305
15.1 ... Einführung ... 305
15.2 ... Die »Iterable«-Schnittstelle ... 312
15.3 ... Die »Collection«-Schnittstelle ... 313
15.4 ... Die »Set«-Schnittstelle ... 315
15.5 ... Die »List«-Schnittstelle ... 320
15.6 ... Die »Stream«-Schnittstelle ... 323
15.7 ... Die »Map«-Schnittstelle ... 327
15.8 ... Wiederholungsfragen und Übungen ... 331
16. Dateien und Verzeichnisse ... 332
16.1 ... Klassen- und Schnittstellenüberblick ... 332
16.2 ... Dateien und Verzeichnisse ergründen ... 334
16.3 ... Dateien und Verzeichnisse bearbeiten ... 342
16.4 ... Textdateien lesen und schreiben ... 344
16.5 ... Wiederholungsaufgaben und Übungen ... 348
17. JavaFX ... 349
17.1 ... Installation ... 349
17.2 ... Einführung ... 350
17.3 ... Arbeiten mit Steuerelementen ... 355
17.4 ... Grafikprogrammierung ... 364
17.5 ... Wiederholungsaufgaben und Übungen ... 371
18. Javadoc ... 372
18.1 ... Javadoc-Syntax ... 372
18.2 ... Das Javadoc-Kommando ... 376
18.3 ... Übung ... 376
19. Pakete, Bibliotheken und Module ... 377
19.1 ... import ... 378
19.2 ... Pakete ... 380
19.3 ... Bibliotheken ... 382
19.4 ... Module (»Jigsaw«) ... 384
19.5 ... Wiederholungsfragen ... 391
A. Crashkurs IntelliJ IDEA ... 392
A.1 ... Benutzeroberfläche ... 392
A.2 ... Projekte ... 398
A.3 ... Einstellungen ... 402
B. Lösungen ... 404
B.1 ... Kapitel 1, »Hello World!« ... 404
B.2 ... Kapitel 2, »Java-Crashkurs« ... 406
B.3 ... Kapitel 3, »Variablenverwaltung« ... 408
B.4 ... Kapitel 4, »Operatoren« ... 410
B.5 ... Kapitel 5, »Verzweigungen und Schleifen« ... 411
B.6 ... Kapitel 6, »Arrays« ... 413
B.7 ... Kapitel 7, »Zeichenketten« ... 414
B.8 ... Kapitel 8, »Datum und Uhrzeit« ... 415
B.9 ... Kapitel 9, »Methoden« ... 415
B.10 ... Kapitel 10, »Exceptions« ... 417
B.11 ... Kapitel 11, »Klassen« ... 418
B.12 ... Kapitel 12, »Vererbung und Schnittstellen« ... 421
B.13 ... Kapitel 13, »Generische Klassen und Methoden« ... 423
B.14 ... Kapitel 14, »Lambda-Ausdrücke« ... 424
B.15 ... Kapitel 15, »Collections« ... 425
B.16 ... Kapitel 16, »Dateien und Verzeichnisse« ... 426
B.17 ... Kapitel 17, »JavaFX« ... 428
B.18 ... Kapitel 18, »Javadoc« ... 430
B.19 ... Kapitel 19, »Pakete, Bibliotheken und Module« ... 430
Index ... 433
Vorwort ... 21
1. Hello World! ... 23
1.1 ... Einführung ... 23
1.2 ... Java und die IntelliJ IDEA installieren ... 29
1.3 ... Installation unter Windows ... 30
1.4 ... Installation unter Ubuntu Linux ... 33
1.5 ... Installation unter macOS ... 34
1.6 ... »Hello World« mit javac und java manuell übersetzen ... 34
1.7 ... Die Java-Shell ... 44
1.8 ... Hello IntelliJ IDEA ... 46
1.9 ... Wiederholungsfragen ... 52
2. Java-Crashkurs ... 53
2.1 ... Die Idee des objektorientierten Programmierens ... 53
2.2 ... Java-Syntax ... 58
2.3 ... Wiederholungsfragen ... 65
3. Variablenverwaltung ... 66
3.1 ... Variablen ... 66
3.2 ... Elementare Datentypen ... 69
3.3 ... Literale ... 77
3.4 ... Variablen im größeren Java-Kontext ... 79
3.5 ... Variablen einlesen und ausgeben ... 85
3.6 ... Konstanten und Enums ... 89
3.7 ... Wiederholungsfragen und Übungen ... 91
4. Operatoren ... 92
4.1 ... Überblick ... 92
4.2 ... Details und Sonderfälle ... 94
4.3 ... Wiederholungsfragen ... 101
5. Verzweigungen und Schleifen ... 102
5.1 ... »if«-Verzweigungen ... 103
5.2 ... »if«-Kurzschreibweise (ternärer Operator) ... 108
5.3 ... »switch«-Verzweigungen ... 109
5.4 ... »for«-Schleifen ... 113
5.5 ... »for-each«-Schleifen ... 119
5.6 ... »while«- und »do-while»-Schleifen ... 120
5.7 ... »break« und »continue« ... 122
5.8 ... Wiederholungsfragen und Übungen ... 124
6. Arrays ... 126
6.1 ... Syntax ... 126
6.2 ... Mit Arrays arbeiten ... 131
6.3 ... Wiederholungsfragen ... 134
7. Zeichenketten ... 136
7.1 ... Der Datentyp »char« ... 136
7.2 ... Die »String«-Klasse ... 138
7.3 ... Formatierung und Konvertierung ... 145
7.4 ... Die »StringBuilder«-Klasse ... 151
7.5 ... Zeichensatzprobleme ... 152
7.6 ... Beispiele ... 154
7.7 ... Wiederholungsfragen und Übungen ... 157
8. Datum und Uhrzeit ... 158
8.1 ... Datum und Zeit seit Java 8 ... 159
8.2 ... Veraltete Datums- und Zeitklassen (Date, Calendar) ... 168
8.3 ... Wiederholungsfragen und Übungen ... 176
9. Methoden ... 177
9.1 ... Einführung ... 178
9.2 ... Parameterliste ... 181
9.3 ... Rückgabewert und »return« ... 187
9.4 ... Rekursion ... 188
9.5 ... Beispiele ... 190
9.6 ... Wiederholungsfragen und Übungen ... 194
10. Exceptions ... 197
10.1 ... Exception-Klassen ... 198
10.2 ... try-catch ... 200
10.3 ... Fehleranfällige Methoden deklarieren (»throws«) ... 203
10.4 ... Selbst Exceptions werfen (»throw«) ... 205
10.5 ... Beispiel ... 206
10.6 ... Wiederholungsfragen und Übungen ... 208
11. Klassen ... 209
11.1 ... Top-Level-Klassen ... 210
11.2 ... Geschachtelte Klassen ... 225
11.3 ... Anonyme Klassen ... 227
11.4 ... Statische geschachtelte Klassen ... 232
11.5 ... Beispiel: Schachfigur Springer ... 233
11.6 ... Beispiel: Bücher und Kapitel ... 238
11.7 ... Wiederholungsfragen und Übungen ... 241
12. Vererbung und Schnittstellen ... 244
12.1 ... Vererbung ... 245
12.2 ... Die »Object«-Klasse ... 255
12.3 ... Vererbungsbeispiel (Schachfiguren) ... 259
12.4 ... Schnittstellen ... 264
12.5 ... Schnittstellenbeispiel (geometrische Figuren) ... 269
12.6 ... Wiederholungsfragen und Übungen ... 272
13. Generische Klassen und Methoden ... 275
13.1 ... Einführung ... 275
13.2 ... Deklaration generischer Klassen und Schnittstellen ... 277
13.3 ... Deklaration generischer Methoden ... 279
13.4 ... Wildcards ... 280
13.5 ... Generics-Beispiel (Comparable) ... 285
13.6 ... Wiederholungsfragen und Übungen ... 290
14. Lambda-Ausdrücke ... 291
14.1 ... Hello Lambda-World! ... 291
14.2 ... Lambda & Co. ... 293
14.3 ... Wiederholungsfragen ... 303
15. Collections ... 305
15.1 ... Einführung ... 305
15.2 ... Die »Iterable«-Schnittstelle ... 312
15.3 ... Die »Collection«-Schnittstelle ... 313
15.4 ... Die »Set«-Schnittstelle ... 315
15.5 ... Die »List«-Schnittstelle ... 320
15.6 ... Die »Stream«-Schnittstelle ... 323
15.7 ... Die »Map«-Schnittstelle ... 327
15.8 ... Wiederholungsfragen und Übungen ... 331
16. Dateien und Verzeichnisse ... 332
16.1 ... Klassen- und Schnittstellenüberblick ... 332
16.2 ... Dateien und Verzeichnisse ergründen ... 334
16.3 ... Dateien und Verzeichnisse bearbeiten ... 342
16.4 ... Textdateien lesen und schreiben ... 344
16.5 ... Wiederholungsaufgaben und Übungen ... 348
17. JavaFX ... 349
17.1 ... Installation ... 349
17.2 ... Einführung ... 350
17.3 ... Arbeiten mit Steuerelementen ... 355
17.4 ... Grafikprogrammierung ... 364
17.5 ... Wiederholungsaufgaben und Übungen ... 371
18. Javadoc ... 372
18.1 ... Javadoc-Syntax ... 372
18.2 ... Das Javadoc-Kommando ... 376
18.3 ... Übung ... 376
19. Pakete, Bibliotheken und Module ... 377
19.1 ... import ... 378
19.2 ... Pakete ... 380
19.3 ... Bibliotheken ... 382
19.4 ... Module (»Jigsaw«) ... 384
19.5 ... Wiederholungsfragen ... 391
A. Crashkurs IntelliJ IDEA ... 392
A.1 ... Benutzeroberfläche ... 392
A.2 ... Projekte ... 398
A.3 ... Einstellungen ... 402
B. Lösungen ... 404
B.1 ... Kapitel 1, »Hello World!« ... 404
B.2 ... Kapitel 2, »Java-Crashkurs« ... 406
B.3 ... Kapitel 3, »Variablenverwaltung« ... 408
B.4 ... Kapitel 4, »Operatoren« ... 410
B.5 ... Kapitel 5, »Verzweigungen und Schleifen« ... 411
B.6 ... Kapitel 6, »Arrays« ... 413
B.7 ... Kapitel 7, »Zeichenketten« ... 414
B.8 ... Kapitel 8, »Datum und Uhrzeit« ... 415
B.9 ... Kapitel 9, »Methoden« ... 415
B.10 ... Kapitel 10, »Exceptions« ... 417
B.11 ... Kapitel 11, »Klassen« ... 418
B.12 ... Kapitel 12, »Vererbung und Schnittstellen« ... 421
B.13 ... Kapitel 13, »Generische Klassen und Methoden« ... 423
B.14 ... Kapitel 14, »Lambda-Ausdrücke« ... 424
B.15 ... Kapitel 15, »Collections« ... 425
B.16 ... Kapitel 16, »Dateien und Verzeichnisse« ... 426
B.17 ... Kapitel 17, »JavaFX« ... 428
B.18 ... Kapitel 18, »Javadoc« ... 430
B.19 ... Kapitel 19, »Pakete, Bibliotheken und Module« ... 430
Index ... 433
1. Hello World! ... 23
1.1 ... Einführung ... 23
1.2 ... Java und die IntelliJ IDEA installieren ... 29
1.3 ... Installation unter Windows ... 30
1.4 ... Installation unter Ubuntu Linux ... 33
1.5 ... Installation unter macOS ... 34
1.6 ... »Hello World« mit javac und java manuell übersetzen ... 34
1.7 ... Die Java-Shell ... 44
1.8 ... Hello IntelliJ IDEA ... 46
1.9 ... Wiederholungsfragen ... 52
2. Java-Crashkurs ... 53
2.1 ... Die Idee des objektorientierten Programmierens ... 53
2.2 ... Java-Syntax ... 58
2.3 ... Wiederholungsfragen ... 65
3. Variablenverwaltung ... 66
3.1 ... Variablen ... 66
3.2 ... Elementare Datentypen ... 69
3.3 ... Literale ... 77
3.4 ... Variablen im größeren Java-Kontext ... 79
3.5 ... Variablen einlesen und ausgeben ... 85
3.6 ... Konstanten und Enums ... 89
3.7 ... Wiederholungsfragen und Übungen ... 91
4. Operatoren ... 92
4.1 ... Überblick ... 92
4.2 ... Details und Sonderfälle ... 94
4.3 ... Wiederholungsfragen ... 101
5. Verzweigungen und Schleifen ... 102
5.1 ... »if«-Verzweigungen ... 103
5.2 ... »if«-Kurzschreibweise (ternärer Operator) ... 108
5.3 ... »switch«-Verzweigungen ... 109
5.4 ... »for«-Schleifen ... 113
5.5 ... »for-each«-Schleifen ... 119
5.6 ... »while«- und »do-while»-Schleifen ... 120
5.7 ... »break« und »continue« ... 122
5.8 ... Wiederholungsfragen und Übungen ... 124
6. Arrays ... 126
6.1 ... Syntax ... 126
6.2 ... Mit Arrays arbeiten ... 131
6.3 ... Wiederholungsfragen ... 134
7. Zeichenketten ... 136
7.1 ... Der Datentyp »char« ... 136
7.2 ... Die »String«-Klasse ... 138
7.3 ... Formatierung und Konvertierung ... 145
7.4 ... Die »StringBuilder«-Klasse ... 151
7.5 ... Zeichensatzprobleme ... 152
7.6 ... Beispiele ... 154
7.7 ... Wiederholungsfragen und Übungen ... 157
8. Datum und Uhrzeit ... 158
8.1 ... Datum und Zeit seit Java 8 ... 159
8.2 ... Veraltete Datums- und Zeitklassen (Date, Calendar) ... 168
8.3 ... Wiederholungsfragen und Übungen ... 176
9. Methoden ... 177
9.1 ... Einführung ... 178
9.2 ... Parameterliste ... 181
9.3 ... Rückgabewert und »return« ... 187
9.4 ... Rekursion ... 188
9.5 ... Beispiele ... 190
9.6 ... Wiederholungsfragen und Übungen ... 194
10. Exceptions ... 197
10.1 ... Exception-Klassen ... 198
10.2 ... try-catch ... 200
10.3 ... Fehleranfällige Methoden deklarieren (»throws«) ... 203
10.4 ... Selbst Exceptions werfen (»throw«) ... 205
10.5 ... Beispiel ... 206
10.6 ... Wiederholungsfragen und Übungen ... 208
11. Klassen ... 209
11.1 ... Top-Level-Klassen ... 210
11.2 ... Geschachtelte Klassen ... 225
11.3 ... Anonyme Klassen ... 227
11.4 ... Statische geschachtelte Klassen ... 232
11.5 ... Beispiel: Schachfigur Springer ... 233
11.6 ... Beispiel: Bücher und Kapitel ... 238
11.7 ... Wiederholungsfragen und Übungen ... 241
12. Vererbung und Schnittstellen ... 244
12.1 ... Vererbung ... 245
12.2 ... Die »Object«-Klasse ... 255
12.3 ... Vererbungsbeispiel (Schachfiguren) ... 259
12.4 ... Schnittstellen ... 264
12.5 ... Schnittstellenbeispiel (geometrische Figuren) ... 269
12.6 ... Wiederholungsfragen und Übungen ... 272
13. Generische Klassen und Methoden ... 275
13.1 ... Einführung ... 275
13.2 ... Deklaration generischer Klassen und Schnittstellen ... 277
13.3 ... Deklaration generischer Methoden ... 279
13.4 ... Wildcards ... 280
13.5 ... Generics-Beispiel (Comparable) ... 285
13.6 ... Wiederholungsfragen und Übungen ... 290
14. Lambda-Ausdrücke ... 291
14.1 ... Hello Lambda-World! ... 291
14.2 ... Lambda & Co. ... 293
14.3 ... Wiederholungsfragen ... 303
15. Collections ... 305
15.1 ... Einführung ... 305
15.2 ... Die »Iterable«-Schnittstelle ... 312
15.3 ... Die »Collection«-Schnittstelle ... 313
15.4 ... Die »Set«-Schnittstelle ... 315
15.5 ... Die »List«-Schnittstelle ... 320
15.6 ... Die »Stream«-Schnittstelle ... 323
15.7 ... Die »Map«-Schnittstelle ... 327
15.8 ... Wiederholungsfragen und Übungen ... 331
16. Dateien und Verzeichnisse ... 332
16.1 ... Klassen- und Schnittstellenüberblick ... 332
16.2 ... Dateien und Verzeichnisse ergründen ... 334
16.3 ... Dateien und Verzeichnisse bearbeiten ... 342
16.4 ... Textdateien lesen und schreiben ... 344
16.5 ... Wiederholungsaufgaben und Übungen ... 348
17. JavaFX ... 349
17.1 ... Installation ... 349
17.2 ... Einführung ... 350
17.3 ... Arbeiten mit Steuerelementen ... 355
17.4 ... Grafikprogrammierung ... 364
17.5 ... Wiederholungsaufgaben und Übungen ... 371
18. Javadoc ... 372
18.1 ... Javadoc-Syntax ... 372
18.2 ... Das Javadoc-Kommando ... 376
18.3 ... Übung ... 376
19. Pakete, Bibliotheken und Module ... 377
19.1 ... import ... 378
19.2 ... Pakete ... 380
19.3 ... Bibliotheken ... 382
19.4 ... Module (»Jigsaw«) ... 384
19.5 ... Wiederholungsfragen ... 391
A. Crashkurs IntelliJ IDEA ... 392
A.1 ... Benutzeroberfläche ... 392
A.2 ... Projekte ... 398
A.3 ... Einstellungen ... 402
B. Lösungen ... 404
B.1 ... Kapitel 1, »Hello World!« ... 404
B.2 ... Kapitel 2, »Java-Crashkurs« ... 406
B.3 ... Kapitel 3, »Variablenverwaltung« ... 408
B.4 ... Kapitel 4, »Operatoren« ... 410
B.5 ... Kapitel 5, »Verzweigungen und Schleifen« ... 411
B.6 ... Kapitel 6, »Arrays« ... 413
B.7 ... Kapitel 7, »Zeichenketten« ... 414
B.8 ... Kapitel 8, »Datum und Uhrzeit« ... 415
B.9 ... Kapitel 9, »Methoden« ... 415
B.10 ... Kapitel 10, »Exceptions« ... 417
B.11 ... Kapitel 11, »Klassen« ... 418
B.12 ... Kapitel 12, »Vererbung und Schnittstellen« ... 421
B.13 ... Kapitel 13, »Generische Klassen und Methoden« ... 423
B.14 ... Kapitel 14, »Lambda-Ausdrücke« ... 424
B.15 ... Kapitel 15, »Collections« ... 425
B.16 ... Kapitel 16, »Dateien und Verzeichnisse« ... 426
B.17 ... Kapitel 17, »JavaFX« ... 428
B.18 ... Kapitel 18, »Javadoc« ... 430
B.19 ... Kapitel 19, »Pakete, Bibliotheken und Module« ... 430
Index ... 433