Meine Filiale

Java ist auch eine Insel

Das Standardwerk für Programmierer. Über 1.000 Seiten Java-Wissen. Mit vielen Beispielen und Übungen, aktuell zu Java 14

Christian Ullenboom

Buch (gebundene Ausgabe)
Buch (gebundene Ausgabe)
49,90
49,90
inkl. gesetzl. MwSt.
inkl. gesetzl. MwSt.
Sofort lieferbar Versandkostenfrei
Sofort lieferbar
Versandkostenfrei

Weitere Formate

gebundene Ausgabe

49,90 €

Accordion öffnen
  • Java ist auch eine Insel

    Rheinwerk

    Sofort lieferbar

    49,90 €

    Rheinwerk

eBook (ePUB)

44,90 €

Accordion öffnen

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, Dateien und Datenströme. Dieses Buch gehört in das Regal eines jeden Java-Programmierers. Es liegt aktuell in der 15. 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 usw.

Die Fachpresse zur Vorauflage:

Java magazin: »Die neueste Version des Rheinwerk-Klassikers bietet Java-Programmierern einen Kurzüberblick über diverse Themen und taugt auch als Nachschlagewerk.«

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.

Produktdetails

Einband gebundene Ausgabe
Seitenzahl 1246
Erscheinungsdatum 25.06.2020
Sprache Deutsch
ISBN 978-3-8362-7737-2
Reihe Rheinwerk Computing
Verlag Rheinwerk
Maße (L/B/H) 24,6/19,6/6,8 cm
Gewicht 2403 g
Auflage 15. Auflage
Verkaufsrang 27017

Kundenbewertungen

Es wurden noch keine Bewertungen geschrieben.

  • Artikelbild-0


  •   Materialien zum Buch ... 30

      Vorwort ... 31

      1.  Java ist auch eine Sprache ... 47

           1.1 ... Historischer Hintergrund ... 47

           1.2 ... Warum Java populär ist - die zentralen Eigenschaften ... 49

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

           1.4 ... Weiterentwicklung und Verluste ... 66

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

           1.6 ... Java SE-Implementierungen ... 75

           1.7 ... AdoptOpenJDK installieren ... 79

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

           1.9 ... Entwicklungsumgebungen ... 85

           1.10 ... Zum Weiterlesen ... 96

      2.  Imperative Sprachkonzepte ... 97

           2.1 ... Elemente der Programmiersprache Java ... 97

           2.2 ... Von der Klasse zur Anweisung ... 105

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

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

           2.5 ... Bedingte Anweisungen oder Fallunterscheidungen ... 160

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

           2.7 ... Methoden einer Klasse ... 196

           2.8 ... Zum Weiterlesen ... 222

      3.  Klassen und Objekte ... 223

           3.1 ... Objektorientierte Programmierung (OOP) ... 223

           3.2 ... Eigenschaften einer Klasse ... 225

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

           3.4 ... Neue Objekte erzeugen ... 230

           3.5 ... ZZZZZnake ... 242

           3.6 ... Pakete schnüren, Importe und Compilationseinheiten ... 245

           3.7 ... Mit Referenzen arbeiten, Vielfalt, Identität, Gleichwertigkeit ... 253

           3.8 ... Zum Weiterlesen ... 265

      4.  Arrays und ihre Anwendungen ... 267

           4.1 ... Einfache Feldarbeit ... 267

           4.2 ... Die erweiterte for-Schleife ... 278

           4.3 ... Methode mit variabler Argumentanzahl (Varargs) ... 282

           4.4 ... Mehrdimensionale Arrays * ... 285

           4.5 ... Bibliotheksunterstützung von Arrays ... 291

           4.6 ... Die Klasse Arrays zum Vergleichen, Füllen, Suchen und Sortieren nutzen ... 293

           4.7 ... Der Einstiegspunkt für das Laufzeitsystem: main(...) ... 310

           4.8 ... Zum Weiterlesen ... 313

      5.  Der Umgang mit Zeichenketten ... 315

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

           5.2 ... Datentypen für Zeichen und Zeichenfolgen ... 324

           5.3 ... Die Character-Klasse ... 325

           5.4 ... Zeichenfolgen ... 330

           5.5 ... Die Klasse String und ihre Methoden ... 332

           5.6 ... Veränderbare Zeichenketten mit StringBuilder und StringBuffer ... 358

           5.7 ... CharSequence als Basistyp ... 368

           5.8 ... Konvertieren zwischen Primitiven und Strings ... 371

           5.9 ... Strings zusammenhängen (konkatenieren) ... 380

           5.10 ... Zerlegen von Zeichenketten ... 382

           5.11 ... Ausgaben formatieren ... 388

           5.12 ... Zum Weiterlesen ... 394

      6.  Eigene Klassen schreiben ... 395

           6.1 ... Eigene Klassen mit Eigenschaften deklarieren ... 395

           6.2 ... Privatsphäre und Sichtbarkeit ... 407

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

           6.4 ... Konstanten und Aufzählungen ... 424

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

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

           6.7 ... Zum Weiterlesen ... 456

      7.  Objektorientierte Beziehungsfragen ... 457

           7.1 ... Assoziationen zwischen Objekten ... 457

           7.2 ... Vererbung ... 465

           7.3 ... Typen in Hierarchien ... 476

           7.4 ... Methoden überschreiben ... 483

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

           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 ... Geprüfte Ausnahmen ... 555

           8.3 ... Ungeprüfte Ausnahmen (RuntimeException) ... 558

           8.4 ... Gut gefangen ... 562

           8.5 ... Die Klassenhierarchie der Ausnahmen ... 572

           8.6 ... Auslösen eigener Exceptions ... 583

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

           8.8 ... Besonderheiten bei der Ausnahmebehandlung * ... 612

           8.9 ... Harte Fehler - Error * ... 617

           8.10 ... Assertions * ... 618

           8.11 ... Zum Weiterlesen ... 622

      9.  Geschachtelte Typen ... 623

           9.1 ... Geschachtelte Klassen, Schnittstellen und 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 ... Die Typen über Bounds einschränken ... 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 ... Funktionale Schnittstellen und Lambda-Ausdrücke ... 785

           12.2 ... Methodenreferenz ... 811

           12.3 ... Konstruktorreferenz ... 815

           12.4 ... Funktionale Programmierung ... 819

           12.5 ... Funktionale Schnittstellen aus dem java.util.function-Paket ... 828

           12.6 ... Optional ist keine Nullnummer ... 842

           12.7 ... Was ist jetzt so funktional? ... 854

           12.8 ... Zum Weiterlesen ... 856

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

           13.1 ... Architektur, Design und Implementierung ... 857

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

           13.3 ... Zum Weiterlesen ... 865

    14.  Java Platform Module System ... 867

           14.1 ... Klassenlader (Class Loader) und Modul-/Klassenpfad ... 867

           14.2 ... Module entwickeln und einbinden ... 873

           14.3 ... Zum Weiterlesen ... 888

    15.  Die Klassenbibliothek ... 889

           15.1 ... Die Java-Klassenphilosophie ... 889

           15.2 ... Einfache Zeitmessung und Profiling * ... 896

           15.3 ... Die Klasse Class ... 899

           15.4 ... Klassenlader ... 903

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

           15.6 ... Sprachen der Länder ... 913

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

           15.8 ... Date-Time-API ... 920

           15.9 ... Logging mit Java ... 925

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

           15.11 ... Zum Weiterlesen ... 933

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

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

           16.2 ... Existierende Threads und neue Threads erzeugen ... 939

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

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

           16.5 ... Zum Weiterlesen ... 975

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

           17.1 ... Listen ... 977

           17.2 ... Mengen (Sets) ... 996

           17.3 ... Java Stream-API ... 1007

           17.4 ... Einen Stream erzeugen ... 1009

           17.5 ... Terminale Operationen ... 1014

           17.6 ... Intermediäre Operationen ... 1025

           17.7 ... Zum Weiterlesen ... 1031

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

           18.1 ... GUI-Frameworks ... 1033

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

           18.3 ... GUI-Builder ... 1038

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

           18.5 ... Grundlegendes zum Zeichnen ... 1051

           18.6 ... Zum Weiterlesen ... 1057

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

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

           19.2 ... Dateisysteme und Pfade ... 1061

           19.3 ... Dateien mit wahlfreiem Zugriff ... 1070

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

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

           19.6 ... Zum Weiterlesen ... 1095

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

           20.1 ... Relationale Datenbanken und Java-Zugriffe ... 1097

           20.2 ... Eine Beispielabfrage ... 1100

           20.3 ... Zum Weiterlesen ... 1102

    21.  Bits und Bytes, Mathematisches und Geld ... 1103

           21.1 ... Bits und Bytes ... 1103

           21.2 ... Fließkomma-Arithmetik in Java ... 1118

           21.3 ... Die Eigenschaften der Klasse Math ... 1124

           21.4 ... Genauigkeit, Wertebereich eines Typs und Überlaufkontrolle * ... 1135

           21.5 ... Zufallszahlen: Random, SecureRandom und SplittableRandom ... 1140

           21.6 ... Große Zahlen * ... 1144

           21.7 ... Mathe bitte strikt * ... 1158

           21.8 ... Geld und Währung ... 1159

           21.9 ... Zum Weiterlesen ... 1161

    22.  Testen mit JUnit ... 1163

           22.1 ... Softwaretests ... 1163

           22.2 ... Das Test-Framework JUnit ... 1164

           22.3 ... Java-Assertions-Bibliotheken und AssertJ ... 1176

           22.4 ... Aufbau größerer Testfälle ... 1178

           22.5 ... Wie gutes Design das Testen ermöglicht ... 1181

           22.6 ... Dummy, Fake, Stub und Mock ... 1183

           22.7 ... JUnit-Erweiterungen, Testzusätze ... 1185

           22.8 ... Zum Weiterlesen ... 1186

    23.  Die Werkzeuge des JDK ... 1187

           23.1 ... Übersicht ... 1187

           23.2 ... Java-Quellen übersetzen ... 1188

           23.3 ... Die Java-Laufzeitumgebung ... 1190

           23.4 ... Dokumentationskommentare mit Javadoc ... 1194

           23.5 ... Das Archivformat JAR ... 1204

           23.6 ... jlink: der Java Linker ... 1209

           23.7 ... Zum Weiterlesen ... 1210

      Anhang ... 1211

      Index ... 1229