39,90 €*
Versandkostenfrei per Post / DHL
auf Lager, Lieferzeit 1-2 Werktage
Mit diesem Buch steigen Sie ohne Vorkenntnisse in Java und die objektorientierte Programmierung ein. Schritt für Schritt machen Sie sich mit der Sprache und ihren Konzepten vertraut. Sie lernen, in Algorithmen zu denken und Java sowie die vielen Werkzeuge Ihrer Plattform geschickt zu nutzen. Immer praxisnah und mit Gefühl für mögliche Verständnishürden: So werden auch professionelle Themen wie Testabdeckung, Multithreading und Servletentwicklung einsteigergerecht vermittelt. Schließlich schreiben Sie zeitgemäßen Code, der auch komplexe Software trägt. Ideal für Ausbildung, Studium und Beruf!
Aus dem Inhalt:
- Die Entwicklungsumgebung einrichten und kennenlernen
- Grundkonzepte glasklar vorgestellt
- Sprachmittel gründlich verstehen
- Neue Features einsetzen
- Unit Tests und Test Driven Design
- Datenbanken anbinden
- In Servlet-Technologie einsteigen
- Events einsetzen und asynchron programmieren
- GUIs entwickeln
- Guten Code schreiben
- Mit Dateien und Streams arbeiten
- In die Entwicklung von Android-Apps einsteigen
Mit diesem Buch steigen Sie ohne Vorkenntnisse in Java und die objektorientierte Programmierung ein. Schritt für Schritt machen Sie sich mit der Sprache und ihren Konzepten vertraut. Sie lernen, in Algorithmen zu denken und Java sowie die vielen Werkzeuge Ihrer Plattform geschickt zu nutzen. Immer praxisnah und mit Gefühl für mögliche Verständnishürden: So werden auch professionelle Themen wie Testabdeckung, Multithreading und Servletentwicklung einsteigergerecht vermittelt. Schließlich schreiben Sie zeitgemäßen Code, der auch komplexe Software trägt. Ideal für Ausbildung, Studium und Beruf!
Aus dem Inhalt:
- Die Entwicklungsumgebung einrichten und kennenlernen
- Grundkonzepte glasklar vorgestellt
- Sprachmittel gründlich verstehen
- Neue Features einsetzen
- Unit Tests und Test Driven Design
- Datenbanken anbinden
- In Servlet-Technologie einsteigen
- Events einsetzen und asynchron programmieren
- GUIs entwickeln
- Guten Code schreiben
- Mit Dateien und Streams arbeiten
- In die Entwicklung von Android-Apps einsteigen
1. Einführung ... 21
1.1 ... Was ist Java? ... 22
1.2 ... Die Arbeitsumgebung installieren ... 28
1.3 ... Erste Schritte in NetBeans ... 30
1.4 ... Das erste Programm ... 32
1.5 ... In Algorithmen denken, in Java schreiben ... 41
1.6 ... Die Java-Klassenbibliothek ... 47
1.7 ... Dokumentieren als Gewohnheit -- Javadoc ... 50
1.8 ... JARs erstellen und ausführen ... 56
1.9 ... Mit dem Debugger arbeiten ... 61
1.10 ... Das erste eigene Projekt ... 66
1.11 ... Zusammenfassung ... 68
2. Variablen und Datentypen ... 69
2.1 ... Variablen ... 69
2.2 ... Primitivtypen ... 73
2.3 ... Objekttypen ... 87
2.4 ... Objekt-Wrapper zu Primitiven ... 91
2.5 ... Array-Typen ... 94
2.6 ... Zusammenfassung ... 96
3. Entscheidungen ... 97
3.1 ... Entweder-oder-Entscheidungen ... 97
3.2 ... Logische Verknüpfungen ... 104
3.3 ... Mehrfach verzweigen mit 'switch' ... 110
3.4 ... Zusammenfassung ... 116
4. Wiederholungen ... 117
4.1 ... Bedingte Wiederholungen mit 'while' ... 117
4.2 ... Abgezählte Wiederholungen -- die 'for'-Schleife ... 121
4.3 ... Abbrechen und überspringen ... 123
4.4 ... Zusammenfassung ... 126
5. Klassen und Objekte ... 127
5.1 ... Klassen und Objekte ... 128
5.2 ... Access-Modifier ... 130
5.3 ... Felder ... 132
5.4 ... Methoden ... 133
5.5 ... Warum Objektorientierung? ... 142
5.6 ... Konstruktoren ... 144
5.7 ... Statische Felder und Methoden ... 148
5.8 ... Unveränderliche Werte ... 151
5.9 ... Spezielle Objektmethoden ... 154
5.10 ... Zusammenfassung ... 156
6. Objektorientierung ... 157
6.1 ... Vererbung ... 158
6.2 ... Interfaces und abstrakte Datentypen ... 171
6.3 ... Übung: Objektorientierte Modellierung ... 179
6.4 ... Innere Klassen ... 180
6.5 ... Enumerationen ... 187
6.6 ... Zusammenfassung ... 190
7. Unit Testing ... 191
7.1 ... Das JUnit-Framework ... 193
7.2 ... Fortgeschrittene Unit Tests ... 199
7.3 ... Besseres Design durch Testfälle ... 205
7.4 ... Zusammenfassung ... 208
8. Die Standardbibliothek ... 209
8.1 ... Zahlen ... 209
8.2 ... Strings ... 214
8.3 ... Reguläre Ausdrücke ... 224
8.4 ... Zeit und Datum ... 231
8.5 ... Internationalisierung und Lokalisierung ... 236
8.6 ... Zusammenfassung ... 244
9. Fehler und Ausnahmen ... 245
9.1 ... Exceptions werfen und behandeln ... 245
9.2 ... Verschiedene Arten von Exceptions ... 252
9.3 ... Invarianten, Vor- und Nachbedingungen ... 258
9.4 ... Zusammenfassung ... 260
10. Arrays und Collections ... 261
10.1 ... Arrays ... 261
10.2 ... Die for-each-Schleife ... 271
10.3 ... Variable Parameterlisten ... 271
10.4 ... Collections ... 273
10.5 ... Typisierte Collections -- Generics ... 278
10.6 ... Maps ... 288
10.7 ... Zusammenfassung ... 290
11. Lambda-Ausdrücke ... 291
11.1 ... Was sind Lambda-Ausdrücke? ... 292
11.2 ... Die Stream-API ... 304
11.3 ... Un-Werte als Objekte -- 'Optional' ... 321
11.4 ... Eine Warnung zum Schluss ... 324
11.5 ... Zusammenfassung ... 325
12. Dateien, Streams und Reader ... 327
12.1 ... Dateien und Verzeichnisse ... 328
12.2 ... Reader, Writer und die 'anderen' Streams ... 334
12.3 ... Objekte lesen und schreiben ... 346
12.4 ... Netzwerkkommunikation ... 349
12.5 ... Zusammenfassung ... 352
13. Multithreading ... 353
13.1 ... Threads und Runnables ... 354
13.2 ... Atomare Datentypen ... 361
13.3 ... Synchronisation ... 362
13.4 ... Fortgeschrittene Koordination zwischen Threads ... 370
13.5 ... Die Zukunft -- wortwörtlich ... 376
13.6 ... Das Speichermodell von Threads ... 381
13.7 ... Zusammenfassung ... 383
14. Servlets -- Java im Web ... 385
14.1 ... Einen Servlet-Container installieren ... 386
14.2 ... Die erste Servlet-Anwendung ... 392
14.3 ... Servlets programmieren ... 403
14.4 ... Java Server Pages ... 410
14.5 ... Langlebige Daten im Servlet -- Ablage in Session und Application ... 416
14.6 ... Fortgeschrittene Servlet-Konzepte -- Listener und Initialisierung ... 419
14.7 ... Zusammenfassung ... 422
15. Datenbanken und Entitäten ... 423
15.1 ... Was ist eine Datenbank? ... 424
15.2 ... Mit einer Datenbank über die JPA verbinden ... 431
15.3 ... Anwendung und Entitäten ... 436
15.4 ... Entitäten laden ... 439
15.5 ... Entitäten löschen ... 444
15.6 ... Beziehungen zu anderen Entitäten ... 445
15.7 ... Zusammenfassung ... 452
16. GUIs mit JavaFX ... 453
16.1 ... Einführung ... 453
16.2 ... Installation ... 454
16.3 ... Architektur von JavaFX ... 454
16.4 ... GUI-Komponenten ... 457
16.5 ... Layouts ... 468
16.6 ... GUI mit Java-API -- Urlaubsverwaltung ... 478
16.7 ... Event-Handling ... 482
16.8 ... JavaFX-Properties und Binding ... 489
16.9 ... Deklarative GUIs mit FXML ... 495
16.10 ... Layout mit CSS ... 501
16.11 ... Transformationen, Animationen und Effekte ... 505
16.12 ... Übungen ... 512
16.13 ... Zusammenfassung ... 513
17. Android ... 515
17.1 ... Einstieg in die Android-Entwicklung ... 515
17.2 ... Eine Benutzeroberfläche designen ... 528
17.3 ... Anwendungen mit mehreren Activities ... 535
17.4 ... Permissions und SystemServices ... 542
17.5 ... Apps im Play Store veröffentlichen ... 546
17.6 ... Zusammenfassung ... 546
18. Hinter den Kulissen ... 549
18.1 ... Klassenpfade und Classloading ... 549
18.2 ... Garbage Collection ... 556
18.3 ... Flexibel codieren mit der Reflection-API ... 563
18.4 ... Blick in die Zukunft ... 569
18.5 ... Zusammenfassung ... 572
19. Und dann? ... 573
19.1 ... Jakarta EE ... 574
19.2 ... Open-Source-Software ... 579
19.3 ... Ergänzende Technologien ... 580
19.4 ... Andere Sprachen ... 583
19.5 ... Programmieren Sie! ... 585
Anhang ... 587
A ... Java-Bibliotheken ... 589
B ... Lösungen zu den Übungsaufgaben ... 597
C ... Glossar ... 707
D ... Kommandozeilenparameter ... 723
Index ... 731
Erscheinungsjahr: | 2020 |
---|---|
Fachbereich: | Programmiersprachen |
Genre: | Informatik |
Rubrik: | Naturwissenschaften & Technik |
Medium: | Buch |
Reihe: | Rheinwerk Computing |
Inhalt: | 736 S. |
ISBN-13: | 9783836276559 |
ISBN-10: | 3836276550 |
Sprache: | Deutsch |
Herstellernummer: | 459/07655 |
Einband: | Gebunden |
Autor: | Günster, Kai |
Auflage: | 3. Auflage |
Hersteller: | Rheinwerk Verlag GmbH |
Maße: | 248 x 178 x 48 mm |
Von/Mit: | Kai Günster |
Erscheinungsdatum: | 27.05.2020 |
Gewicht: | 1,49 kg |
1. Einführung ... 21
1.1 ... Was ist Java? ... 22
1.2 ... Die Arbeitsumgebung installieren ... 28
1.3 ... Erste Schritte in NetBeans ... 30
1.4 ... Das erste Programm ... 32
1.5 ... In Algorithmen denken, in Java schreiben ... 41
1.6 ... Die Java-Klassenbibliothek ... 47
1.7 ... Dokumentieren als Gewohnheit -- Javadoc ... 50
1.8 ... JARs erstellen und ausführen ... 56
1.9 ... Mit dem Debugger arbeiten ... 61
1.10 ... Das erste eigene Projekt ... 66
1.11 ... Zusammenfassung ... 68
2. Variablen und Datentypen ... 69
2.1 ... Variablen ... 69
2.2 ... Primitivtypen ... 73
2.3 ... Objekttypen ... 87
2.4 ... Objekt-Wrapper zu Primitiven ... 91
2.5 ... Array-Typen ... 94
2.6 ... Zusammenfassung ... 96
3. Entscheidungen ... 97
3.1 ... Entweder-oder-Entscheidungen ... 97
3.2 ... Logische Verknüpfungen ... 104
3.3 ... Mehrfach verzweigen mit 'switch' ... 110
3.4 ... Zusammenfassung ... 116
4. Wiederholungen ... 117
4.1 ... Bedingte Wiederholungen mit 'while' ... 117
4.2 ... Abgezählte Wiederholungen -- die 'for'-Schleife ... 121
4.3 ... Abbrechen und überspringen ... 123
4.4 ... Zusammenfassung ... 126
5. Klassen und Objekte ... 127
5.1 ... Klassen und Objekte ... 128
5.2 ... Access-Modifier ... 130
5.3 ... Felder ... 132
5.4 ... Methoden ... 133
5.5 ... Warum Objektorientierung? ... 142
5.6 ... Konstruktoren ... 144
5.7 ... Statische Felder und Methoden ... 148
5.8 ... Unveränderliche Werte ... 151
5.9 ... Spezielle Objektmethoden ... 154
5.10 ... Zusammenfassung ... 156
6. Objektorientierung ... 157
6.1 ... Vererbung ... 158
6.2 ... Interfaces und abstrakte Datentypen ... 171
6.3 ... Übung: Objektorientierte Modellierung ... 179
6.4 ... Innere Klassen ... 180
6.5 ... Enumerationen ... 187
6.6 ... Zusammenfassung ... 190
7. Unit Testing ... 191
7.1 ... Das JUnit-Framework ... 193
7.2 ... Fortgeschrittene Unit Tests ... 199
7.3 ... Besseres Design durch Testfälle ... 205
7.4 ... Zusammenfassung ... 208
8. Die Standardbibliothek ... 209
8.1 ... Zahlen ... 209
8.2 ... Strings ... 214
8.3 ... Reguläre Ausdrücke ... 224
8.4 ... Zeit und Datum ... 231
8.5 ... Internationalisierung und Lokalisierung ... 236
8.6 ... Zusammenfassung ... 244
9. Fehler und Ausnahmen ... 245
9.1 ... Exceptions werfen und behandeln ... 245
9.2 ... Verschiedene Arten von Exceptions ... 252
9.3 ... Invarianten, Vor- und Nachbedingungen ... 258
9.4 ... Zusammenfassung ... 260
10. Arrays und Collections ... 261
10.1 ... Arrays ... 261
10.2 ... Die for-each-Schleife ... 271
10.3 ... Variable Parameterlisten ... 271
10.4 ... Collections ... 273
10.5 ... Typisierte Collections -- Generics ... 278
10.6 ... Maps ... 288
10.7 ... Zusammenfassung ... 290
11. Lambda-Ausdrücke ... 291
11.1 ... Was sind Lambda-Ausdrücke? ... 292
11.2 ... Die Stream-API ... 304
11.3 ... Un-Werte als Objekte -- 'Optional' ... 321
11.4 ... Eine Warnung zum Schluss ... 324
11.5 ... Zusammenfassung ... 325
12. Dateien, Streams und Reader ... 327
12.1 ... Dateien und Verzeichnisse ... 328
12.2 ... Reader, Writer und die 'anderen' Streams ... 334
12.3 ... Objekte lesen und schreiben ... 346
12.4 ... Netzwerkkommunikation ... 349
12.5 ... Zusammenfassung ... 352
13. Multithreading ... 353
13.1 ... Threads und Runnables ... 354
13.2 ... Atomare Datentypen ... 361
13.3 ... Synchronisation ... 362
13.4 ... Fortgeschrittene Koordination zwischen Threads ... 370
13.5 ... Die Zukunft -- wortwörtlich ... 376
13.6 ... Das Speichermodell von Threads ... 381
13.7 ... Zusammenfassung ... 383
14. Servlets -- Java im Web ... 385
14.1 ... Einen Servlet-Container installieren ... 386
14.2 ... Die erste Servlet-Anwendung ... 392
14.3 ... Servlets programmieren ... 403
14.4 ... Java Server Pages ... 410
14.5 ... Langlebige Daten im Servlet -- Ablage in Session und Application ... 416
14.6 ... Fortgeschrittene Servlet-Konzepte -- Listener und Initialisierung ... 419
14.7 ... Zusammenfassung ... 422
15. Datenbanken und Entitäten ... 423
15.1 ... Was ist eine Datenbank? ... 424
15.2 ... Mit einer Datenbank über die JPA verbinden ... 431
15.3 ... Anwendung und Entitäten ... 436
15.4 ... Entitäten laden ... 439
15.5 ... Entitäten löschen ... 444
15.6 ... Beziehungen zu anderen Entitäten ... 445
15.7 ... Zusammenfassung ... 452
16. GUIs mit JavaFX ... 453
16.1 ... Einführung ... 453
16.2 ... Installation ... 454
16.3 ... Architektur von JavaFX ... 454
16.4 ... GUI-Komponenten ... 457
16.5 ... Layouts ... 468
16.6 ... GUI mit Java-API -- Urlaubsverwaltung ... 478
16.7 ... Event-Handling ... 482
16.8 ... JavaFX-Properties und Binding ... 489
16.9 ... Deklarative GUIs mit FXML ... 495
16.10 ... Layout mit CSS ... 501
16.11 ... Transformationen, Animationen und Effekte ... 505
16.12 ... Übungen ... 512
16.13 ... Zusammenfassung ... 513
17. Android ... 515
17.1 ... Einstieg in die Android-Entwicklung ... 515
17.2 ... Eine Benutzeroberfläche designen ... 528
17.3 ... Anwendungen mit mehreren Activities ... 535
17.4 ... Permissions und SystemServices ... 542
17.5 ... Apps im Play Store veröffentlichen ... 546
17.6 ... Zusammenfassung ... 546
18. Hinter den Kulissen ... 549
18.1 ... Klassenpfade und Classloading ... 549
18.2 ... Garbage Collection ... 556
18.3 ... Flexibel codieren mit der Reflection-API ... 563
18.4 ... Blick in die Zukunft ... 569
18.5 ... Zusammenfassung ... 572
19. Und dann? ... 573
19.1 ... Jakarta EE ... 574
19.2 ... Open-Source-Software ... 579
19.3 ... Ergänzende Technologien ... 580
19.4 ... Andere Sprachen ... 583
19.5 ... Programmieren Sie! ... 585
Anhang ... 587
A ... Java-Bibliotheken ... 589
B ... Lösungen zu den Übungsaufgaben ... 597
C ... Glossar ... 707
D ... Kommandozeilenparameter ... 723
Index ... 731
Erscheinungsjahr: | 2020 |
---|---|
Fachbereich: | Programmiersprachen |
Genre: | Informatik |
Rubrik: | Naturwissenschaften & Technik |
Medium: | Buch |
Reihe: | Rheinwerk Computing |
Inhalt: | 736 S. |
ISBN-13: | 9783836276559 |
ISBN-10: | 3836276550 |
Sprache: | Deutsch |
Herstellernummer: | 459/07655 |
Einband: | Gebunden |
Autor: | Günster, Kai |
Auflage: | 3. Auflage |
Hersteller: | Rheinwerk Verlag GmbH |
Maße: | 248 x 178 x 48 mm |
Von/Mit: | Kai Günster |
Erscheinungsdatum: | 27.05.2020 |
Gewicht: | 1,49 kg |