+49 (0) 541 / 40666 200

Sie erreichen uns Montag bis
Freitag von 8 bis 16 Uhr

 

Schreiben Sie uns eine Email oder benutzten eine andere Kontaktmöglichkeit
 Versandkostenfrei in Deutschland
Einkaufskorb
Keine Artikel
in Ihrem
Einkaufskorb

Java ist auch eine Insel

Java programmieren lernen mit dem umfassenden Standardwerk für Java-Entwickler - 500 - 14830108

Buch von Christian Ullenboom

88795161
Zum Vergrößern anklicken

nur 49,90 €

(portofrei!, inkl. MwSt.)

Widerruf zu diesem Artikel
  • Details
  • Beschreibung
  • Information
  • Information zum Autor
  • Inhaltsverzeichnis
  • Bilder
Details
Artikel-Nr.:
88795161
Im Sortiment seit:
23.12.2018
Erscheinungsdatum:
01/2019
Medium:
Buch
Einband:
Gebunden
Auflage:
14. Auflage von 2019
14. Auflage
Autor:
Ullenboom, Christian
Verlag:
Rheinwerk Verlag GmbH
Rheinwerk
Sprache:
Deutsch
Rubrik:
Programmiersprachen
Seiten:
1278
Reihe:
Rheinwerk Computing
Gewicht:
2448 gr
Beschreibung
Die "Insel" ist die erste Wahl, wenn es um aktuelles und praktisches Java-Wissen geht. Java-Einsteiger, Studenten und Umsteiger profitieren von diesem Lehrwerk. Neben der Behandlung der Sprachgrundlagen von Java gibt es kompakte Einführungen in Spezialthemen. So erfahren Sie einiges über Threads, Algorithmen, GUIs, XML und Java. Dieses Buch gehört in das Regal eines jeden Java-Programmierers. Es liegt aktuell in der 14. Auflage vor.

Aus dem Inhalt:

Imperative Sprachkonzepte
Klassen und Objekte
Ausnahmebehandlung
Generics
Lambda-Ausdrücke und funktionale Programmierung
Die Klassenbibliothek
Nebenläufige Programmierung
Einführung in Datenstrukturen, GUI-Entwicklung, Dateien, XML usw.
Information
Von Ausdrücken und Anweisungen zu Klassen und Objekten
Information zum Autor
Christian Ullenboom, Dipl.-Informatiker, ist zertifizierter Java-Programmierer und seit 1997 Trainer und Berater für Java-Technologien und objektorientierte Analyse und Design. Seit Jahren teilt er sein Wissen mit unzähligen Besuchern seiner Website, wo er Fragen beantwortet, Inhalte bereitstellt und diskutiert. Seine Sympathie gilt Java Performance Tuning und den sinnlichen Freuden des Lebens.
Inhaltsverzeichnis
Vorwort ... 31

1. Java ist auch eine Sprache ... 49

1.1 ... Historischer Hintergrund ... 49

1.2 ... Warum Java gut ist -- die zentralen Eigenschaften ... 51

1.3 ... Java im Vergleich zu anderen Sprachen * ... 65

1.4 ... Weiterentwicklung und Verluste ... 68

1.5 ... Java-Plattformen: Java SE, Jakarta EE, Java ME, Java Card ... 72

1.6 ... Java SE-Implementierungen ... 77

1.7 ... Die Installation des Oracle OpenJDK ... 81

1.8 ... Das erste Programm compilieren und testen ... 83

1.9 ... Entwicklungsumgebungen im Allgemeinen ... 87

1.10 ... Eclipse IDE im Speziellen ... 89

1.11 ... Zum Weiterlesen ... 101

2. Imperative Sprachkonzepte ... 103

2.1 ... Elemente der Programmiersprache Java ... 103

2.2 ... Von der Klasse zur Anweisung ... 111

2.3 ... Datentypen, Typisierung, Variablen und Zuweisungen ... 122

2.4 ... Ausdrücke, Operanden und Operatoren ... 140

2.5 ... Bedingte Anweisungen oder Fallunterscheidungen ... 166

2.6 ... Immer das Gleiche mit den Schleifen ... 182

2.7 ... Methoden einer Klasse ... 199

2.8 ... Zum Weiterlesen ... 226

3. Klassen und Objekte ... 227

3.1 ... Objektorientierte Programmierung (OOP) ... 227

3.2 ... Eigenschaften einer Klasse ... 229

3.3 ... Natürlich modellieren mit der UML (Unified Modeling Language) * ... 230

3.4 ... Neue Objekte erzeugen ... 234

3.5 ... ZZZZZnake ... 246

3.6 ... Pakete schnüren, Importe und Kompilationseinheiten ... 249

3.7 ... Mit Referenzen arbeiten, Identität und Gleichheit (Gleichwertigkeit) ... 256

3.8 ... Zum Weiterlesen ... 268

4. Arrays und ihre Anwendungen ... 269

4.1 ... Arrays ... 269

4.2 ... Der Einstiegspunkt für das Laufzeitsystem: main(...) ... 311

4.3 ... Zum Weiterlesen ... 315

5. Der Umgang mit Zeichenketten ... 317

5.1 ... Von ASCII über ISO-8859-1 zu Unicode ... 317

5.2 ... Die Character-Klasse ... 326

5.3 ... Zeichenfolgen ... 332

5.4 ... Die Klasse String und ihre Methoden ... 334

5.5 ... Veränderbare Zeichenketten mit StringBuilder und StringBuffer ... 360

5.6 ... CharSequence als Basistyp ... 370

5.7 ... Konvertieren zwischen Primitiven und Strings ... 373

5.8 ... Strings zusammenhängen (konkatenieren) ... 382

5.9 ... Zerlegen von Zeichenketten ... 384

5.10 ... Ausgaben formatieren ... 390

5.11 ... Zum Weiterlesen ... 396

6. Eigene Klassen schreiben ... 397

6.1 ... Eigene Klassen mit Eigenschaften deklarieren ... 397

6.2 ... Privatsphäre und Sichtbarkeit ... 409

6.3 ... Eine für alle -- statische Methoden und statische Attribute ... 419

6.4 ... Konstanten und Aufzählungen ... 426

6.5 ... Objekte anlegen und zerstören ... 434

6.6 ... Klassen- und Objektinitialisierung * ... 446

6.7 ... Zum Weiterlesen ... 456

7. Objektorientierte Beziehungsfragen ... 457

7.1 ... Assoziationen zwischen Objekten ... 457

7.2 ... Vererbung ... 464

7.3 ... Typen in Hierarchien ... 475

7.4 ... Methoden überschreiben ... 482

7.5 ... Drum prüfe, wer sich dynamisch bindet ... 493

7.6 ... Abstrakte Klassen und abstrakte Methoden ... 502

7.7 ... Schnittstellen ... 510

7.8 ... SOLIDe Modellierung ... 549

7.9 ... Zum Weiterlesen ... 552

8. Ausnahmen müssen sein ... 553

8.1 ... Problembereiche einzäunen ... 553

8.2 ... Die Klassenhierarchie der Ausnahmen ... 569

8.3 ... RuntimeException muss nicht aufgefangen werden ... 579

8.4 ... Harte Fehler -- Error * ... 581

8.5 ... Auslösen eigener Exceptions ... 582

8.6 ... Automatisches Ressourcen-Management (try mit Ressourcen) ... 602

8.7 ... Besonderheiten bei der Ausnahmebehandlung * ... 611

8.8 ... Assertions * ... 617

8.9 ... Zum Weiterlesen ... 621

9. Geschachtelte.Typen ... 623

9.1 ... Geschachtelte Klassen, Schnittstellen, Aufzählungen ... 623

9.2 ... Statische geschachtelte Typen ... 624

9.3 ... Nichtstatische geschachtelte Typen ... 626

9.4 ... Lokale Klassen ... 629

9.5 ... Anonyme innere Klassen ... 631

9.6 ... Zugriff auf lokale Variablen aus lokalen und anonymen Klassen * ... 636

9.7 ... this in Unterklassen * ... 637

9.8 ... Nester ... 640

9.9 ... Zum Weiterlesen ... 641

10. Besondere Typen der Java SE ... 643

10.1 ... Object ist die Mutter aller Klassen ... 644

10.2 ... Schwache Referenzen und Cleaner ... 669

10.3 ... Die Utility-Klasse java.util.Objects ... 670

10.4 ... Vergleichen von Objekten und Ordnung herstellen ... 674

10.5 ... Wrapper-Klassen und Autoboxing ... 683

10.6 ... Iterator, Iterable * ... 703

10.7 ... Die Spezial-Oberklasse Enum ... 710

10.8 ... Annotationen in der Java SE ... 720

10.9 ... Zum Weiterlesen ... 726

11. Generics ... 727

11.1 ... Einführung in Java Generics ... 727

11.2 ... Umsetzen der Generics, Typlöschung und Raw-Types ... 743

11.3 ... Einschränken der Typen über Bounds ... 752

11.4 ... Typparameter in der throws-Klausel * ... 756

11.5 ... Generics und Vererbung, Invarianz ... 759

11.6 ... Konsequenzen der Typlöschung: Typ-Token, Arrays und Brücken * ... 773

11.7 ... Zum Weiterlesen ... 783

12. Lambda-Ausdrücke und funktionale Programmierung ... 785

12.1 ... Code = Daten ... 785

12.2 ... Funktionale Schnittstellen und Lambda-Ausdrücke im Detail ... 788

12.3 ... Methodenreferenz ... 809

12.4 ... Konstruktorreferenz ... 813

12.5 ... Implementierung von Lambda-Ausdrücken * ... 816

12.6 ... Funktionale Programmierung mit Java ... 817

12.7 ... Funktionale Schnittstelle aus dem java.util.function-Paket ... 821

12.8 ... Optional ist keine Nullnummer ... 836

12.9 ... Was ist jetzt so funktional? ... 847

12.10 ... Zum Weiterlesen ... 849

13. Architektur, Design und angewandte Objektorientierung ... 851

13.1 ... Architektur, Design und Implementierung ... 851

13.2 ... Design-Patterns (Entwurfsmuster) ... 852

13.3 ... Zum Weiterlesen ... 860

14. Komponenten, JavaBeans und Module ... 861

14.1 ... JavaBeans ... 861

14.2 ... Klassenlader (Class Loader) und Modul-/Klassenpfad ... 870

14.3 ... Module entwickeln und einbinden ... 876

14.4 ... Zum Weiterlesen ... 891

15. Die Klassenbibliothek ... 893

15.1 ... Die Java-Klassenphilosophie ... 893

15.2 ... Einfache Zeitmessung und Profiling * ... 901

15.3 ... Die Klasse Class ... 904

15.4 ... Klassenlader ... 907

15.5 ... Die Utility-Klassen System und Properties ... 908

15.6 ... Sprachen der Länder ... 917

15.7 ... Wichtige Datum-Klassen im Überblick ... 922

15.8 ... Date-Time-API ... 924

15.9 ... Logging mit Java ... 930

15.10 ... Maven: Build-Management und Abhängigkeiten auflösen ... 933

15.11 ... Zum Weiterlesen ... 937

16. Einführung in die nebenläufige Programmierung ... 939

16.1 ... Nebenläufigkeit und Parallelität ... 939

16.2 ... Laufende Threads, neue Threads erzeugen ... 943

16.3 ... Thread-Eigenschaften und Zustände ... 950

16.4 ... Der Ausführer (Executor) kommt ... 964

16.5 ... Zum Weiterlesen ... 977

17. Einführung in Datenstrukturen und Algorithmen ... 979

17.1 ... Listen ... 979

17.2 ... Mengen (Sets) ... 998

17.3 ... Java Stream API ... 1009

17.4 ... Stream erzeugen ... 1012

17.5 ... Terminale Stream-Operationen ... 1016

17.6 ... Intermediäre Stream-Operationen ... 1027

17.7 ... Zum Weiterlesen ... 1033

18. Einführung in grafische Oberflächen ... 1035

18.1 ... GUI-Frameworks ... 1035

18.2 ... Deklarative und programmierte Oberflächen ... 1039

18.3 ... GUI-Builder ... 1041

18.4 ... Mit dem Eclipse WindowBuilder zur ersten Swing-Oberfläche ... 1042

18.5 ... Grundlegendes zum Zeichnen ... 1054

18.6 ... Zum Weiterlesen ... 1060

19. Einführung in Dateien und Datenströme ... 1061

19.1 ... Alte und neue Welt in java.io und java.nio ... 1061

19.2 ... Dateisysteme und Pfade ... 1063

19.3 ... Dateien mit wahlfreiem Zugriff ... 1072

19.4 ... Basisklassen für die Ein-/Ausgabe ... 1078

19.5 ... Lesen aus Dateien und Schreiben in Dateien ... 1092

19.6 ... Zum Weiterlesen ... 1098

20. Einführung ins Datenbankmanagement mit JDBC ... 1099

20.1 ... Relationale Datenbanken und Datenbankmanagementsysteme ... 1099

20.2 ... JDBC und Datenbanktreiber ... 1102

20.3 ... Eine Beispielabfrage ... 1104

20.4 ... Zum Weiterlesen ... 1106

21. Einführung in ... 1107

21.1 ... Auszeichnungssprachen ... 1107

21.2 ... Eigenschaften von XML-Dokumenten ... 1108

21.3 ... Die Java-APIs für XML ... 1120

21.4 ... Java Architecture for XML Binding (JAXB) ... 1124

21.5 ... Zum Weiterlesen ... 1131

22. Bits und Bytes, Mathematisches und Geld ... 1133

22.1 ... Bits und Bytes ... 1133

22.2 ... Fließkomma-Arithmetik in Java ... 1148

22.3 ... Die Eigenschaften der Klasse Math ... 1154

22.4 ... Genauigkeit, Wertebereich eines Typs und Überlaufkontrolle * ... 1165

22.5 ... Zufallszahlen: Random, SecureRandom, SplittableRandom ... 1170

22.6 ... Große Zahlen * ... 1175

22.7 ... Mathe bitte strikt * ... 1188

22.8 ... Geld und Währung ... 1190

22.9 ... Zum Weiterlesen ... 1192

23. Testen mit JUnit ... 1193

23.1 ... Softwaretests ... 1193

23.2 ... Das Test-Framework JUnit ... 1194

23.3 ... Wie gutes Design das Testen ermöglicht ... 1208

23.4 ... Aufbau größerer Testfälle ... 1210

23.5 ... Dummy, Fake, Stub und Mock ... 1214

23.6 ... JUnit-Erweiterungen, Testzusätze ... 1215

23.7 ... Zum Weiterlesen ... 1216

24. Die Werkzeuge des JDK ... 1217

24.1 ... Übersicht ... 1217

24.2 ... Java-Quellen übersetzen ... 1218

24.3 ... Die Java-Laufzeitumgebung ... 1221

24.4 ... jlink: der Java Linker ... 1224

24.5 ... Dokumentationskommentare mit Javadoc ... 1225

24.6 ... Das Archivformat JAR ... 1235

24.7 ... Zum Weiterlesen ... 1240

Anhang ... 1241

Index ... 1261
Bilder