Zum Hauptinhalt springen
Nicht aus der Schweiz? Besuchen Sie lehmanns.de

Java ist auch eine Insel

Das umfassende Handbuch
Buch | Hardcover
1480 Seiten | Ausstattung: DVD-ROM
2010 | 9. aktualisierte und überarbeitete Auflage
Galileo Press (Verlag)
978-3-8362-1506-0 (ISBN)
CHF 69,85 inkl. MwSt
zur Neuauflage
  • Titel erscheint in neuer Auflage
  • Artikel merken
Zu diesem Artikel existiert eine Nachauflage
Christian Ullenboom, Dipl.-Informatiker, ist seit 1997 Trainer und Berater für Java-Technologien und Gründer des ITSchulungsunternehmens tutego. 2005 wurde der zertifizierte Java-Programmierer in Oracles Java Champions Board aufgenommen. Wenn er nicht auf Java unterwegs ist, bereist er die anderen Kontinente und Inseln der Welt.
Die 9. Auflage des Java-Kultbuches wurde gründlich überarbeitet und aktualisiert. So flossen typische Fragen aus Java-Foren oder Tipps und Tricks aus den Java-FAQs mit in die Insel ein, um wirklich das abzudecken, was Programmierer im Alltag brauchen. Von dem umfassenden Werk profitieren insbesondere Einsteiger mit Programmierkenntnissen, denn die Einführung in die Sprache und Java SE-Bibliotheken ist anschaulich und immer praxisorientiert. In der zweiten Hälfte des Buches geht es weiter mit fortgeschrittenen Themen wie Swing, Netzwerkprogrammierung, XML-Verarbeitung, dynamischen Webseiten, Datenbankanbindung und vielem mehr.

1. Sind Sie reif für die »Insel«?
Hier lernen Sie die Sprache Java mit all ihren Merkmalen und Möglichkeiten kennen.

2. Java-Grundlagen verstehen
Von der Sprachbeschreibung über Klassen und Objekte bis hin zur Ausnahmebehandlung und Generics. Kompaktes Grundlagenwissen befähigt Sie zu mehr.

3. Profitieren Sie von praxisnahen Beispielen
Nicht nur lesen, sondern selbst entwickeln und nachvollziehen. Hier gibt es Theorie immer nur mit Praxis.

4. Kennen Sie Swing, JSP/Servlets, RMI?
Hier erhalten Sie wertvolles Profiwissen, um mit diesen Techniken zu arbeiten.

5. Eclipse und NetBeans einsetzen
Die Insel enthält Ausführungen zu Eclipse, die besonders kenntlich gemacht sind. Zudem sind viele Tipps zu NetBeans enthalten.

6. Die Java-Insel ist Ihr Begleiter
Als Lehr- und Arbeitsbuch oder als Referenz ist die Insel geeignet. Kurz: Das umfassende Handbuch für Einsteiger und Profis!

Inhalt der DVD-ROM:
  • Eine vollständige HTML-Version der gedruckten Ausgabe zum bequemen Navigieren und für unterwegs.

  • Alle Code-Beispiele, Übungsaufgaben
  • JDK 6, Eclipse 3.6 und NetBeans 6.9
  • Tomcat, JDOM, HSQLDB, MySQL, launch4j

Dipl.-Informatiker Christian Ullenboom ist Sun-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.


Vorwort 37




1 Java ist auch eine Sprache 51

1.1 Der erste Kontakt 51

1.2 Historischer Hintergrund 51

1.3 Eigenschaften von Java 53

1.4 Java-Plattformen: Java SE, Java EE und Java ME 67

1.5 Die Installation der Java Platform Standard Edition (Java SE) 70

1.6 Das erste Programm compilieren und testen 73

1.7 Entwicklungsumgebungen im Allgemeinen 76

1.8 Eclipse im Speziellen 79

1.9 Zum Weiterlesen 86




2 Sprachbeschreibung 89

2.1 Elemente der Programmiersprache Java 89

2.2 Anweisungen formen Programme 98

2.3 Datentypen, Typisierung, Variablen und Zuweisungen 106

2.4 Blöcke, Initialisierung und Sichtbarkeit 119

2.5 Ausdrücke, Operanden und Operatoren 122

2.6 Bedingte Anweisungen oder Fallunterscheidungen 140

2.7 Schleifen 149

2.8 Methoden einer Klasse 163

2.9 Zum Weiterlesen 183




3 Klassen und Objekte 185

3.1 Objektorientierte Programmierung (OOP) 185

3.2 Eigenschaften einer Klasse 187

3.3 Die UML (Unified Modeling Language) * 188

3.4 Neue Objekte erzeugen 191

3.5 Mit Referenzen arbeiten, Identität und Gleichheit 197

3.6 Kompilationseinheiten, Imports und Pakete schnüren 204

3.7 Arrays 210

3.8 Der Einstiegspunkt für das Laufzeitsystem: »main()« 231

3.9 Annotationen 233

3.10 Zum Weiterlesen 236




4 Der Umgang mit Zeichenketten 237

4.1 Einzelne Zeichen behandeln 237

4.2 Strings und deren Anwendung 243

4.3 Konvertieren zwischen Primitiven und Strings 265

4.4 Veränderbare Zeichenketten mit StringBuilder und StringBuffer 270

4.5 CharSequence als Basistyp * 277

4.6 Sprachabhängiges Vergleichen und Normalisierung * 279

4.7 Reguläre Ausdrücke 284

4.8 Zerlegen von Zeichenketten 295

4.9 Zeichenkodierungen, XML/HTML-Entitys, Base64 * 307

4.10 Ausgaben formatieren 311

4.11 Zum Weiterlesen 325




5 Eigene Klassen schreiben 327

5.1 Eigene Klassen mit Eigenschaften deklarieren 327

5.2 Privatsphäre und Sichtbarkeit 336

5.3 Statische Methoden und statische Attribute 345

5.4 Konstanten und Aufzählungen 351

5.5 Objekte anlegen und zerstören 356

5.6 Klassen- und Objektinitialisierung * 369

5.7 Assoziationen zwischen Objekten 378

5.8 Vererbung 383

5.9 Typen in Hierarchien 392

5.10 Methoden überschreiben 398

5.11 Dynamisches Binden 406

5.12 Abstrakte Klassen und abstrakte Methoden 414

5.13 Schnittstellen 419

5.14 Dokumentationskommentare mit JavaDoc 435




6 Exceptions 443

6.1 Problembereiche einzäunen 443

6.2 Die Klassenhierarchie der Fehler 456

6.3 RuntimeException muss nicht aufgefangen werden 461

6.4 Harte Fehler: Error * 462

6.5 Auslösen eigener Exceptions 463

6.6 Assertions * 474




7 Generics 477

7.1 Einführung in Java Generics 477




8 Äußere.innere Klassen 489

8.1 Geschachtelte (innere) Klassen, Schnittstellen, Aufzählungen 489




9 Besondere Klassen der Java SE 503

9.1 Vergleichen von Objekten 503

9.2 Wrapper-Klassen und Autoboxing 507

9.3 Object ist die Mutter aller Klassen 521

9.4 Die Spezial-Oberklasse »Enum« 538

9.5 Erweitertes »for« und »Iterable« 545

9.6 Zum Weiterlesen 547




10 Architektur, Design und angewandte Objektorientierung 549

10.1 Architektur, Design und Implementierung 549

10.2 Design-Pattern (Entwurfsmuster) 550

10.3 JavaBean 560
10.4 Zum Weiterlesen 571




11 Die Klassenbibliothek 573

11.1 Die Java-Klassenphilosophie 573

11.2 Klassenlader (Class Loader) 575

11.3 Die Utility-Klasse System und Properties 583

11.4 Einfache Benutzereingaben 588

11.5 Ausführen externer Programme * 591

11.6 Zum Weiterlesen 596




12 Bits und Bytes und Mathematisches 597

12.1 Bits und Bytes * 597

12.2 Fließkommaarithmetik in Java 606

12.3 Die Eigenschaften der Klasse »Math« 611

12.4 Mathe bitte strikt * 619

12.5 Die Random-Klasse 620

12.6 Große Zahlen * 622

12.7 Zum Weiterlesen 631




13 Datenstrukturen und Algorithmen 633

13.1 Datenstrukturen und die Collection-API 633

13.2 Mit einem Iterator durch die Daten wandern 644

13.3 Listen 650

13.4 Datenstrukturen mit Ordnung 665

13.5 Mengen (Sets) 670

13.6 Stack (Kellerspeicher, Stapel) 676

13.7 Queues (Schlangen) und Deques 678

13.8 Assoziative Speicher 681

13.9 Die Properties-Klasse 693

13.10 Algorithmen in Collections 697

13.11 Synchronisation der Datenstrukturen 706

13.12 Die Klasse »BitSet« für Bitmengen * 708

13.13 Zum Weiterlesen 712




14 Threads und nebenläufige Programmierung 713

14.1 Nebenläufigkeit 713

14.2 Threads erzeugen 717

14.3 Thread-Eigenschaften und -Zustände 722

14.4 Der Ausführer (Executor) kommt 736

14.5 Synchronisation über kritische Abschnitte 743

14.6 Synchronisation über Warten und Benachrichtigen 765

14.7 Zeitgesteuerte Abläufe 777

14.8 Einen Abbruch der virtuellen Maschine erkennen 779

14.9 Zum Weiterlesen 780




15 Raum und Zeit 781

15.1 Weltzeit * 781

15.2 Wichtige Datum-Klassen im Überblick 782

15.3 Sprachen der Länder 784

15.4 Internationalisierung und Lokalisierung 787

15.5 Die Klasse »Date« 791

15.6 Calendar und GregorianCalendar 793

15.7 Formatieren und Parsen von Datumsangaben 805

15.8 Zum Weiterlesen 813




16 Dateien, Verzeichnisse und Dateizugriffe 815

16.1 Datei und Verzeichnis 816

16.2 Dateien mit wahlfreiem Zugriff 832

16.3 Zum Weiterlesen 837




17 Datenströme 839

17.1 Stream-Klassen und Reader/Writer am Beispiel von Dateien 839

17.2 Basisklassen für die Ein-/Ausgabe 845

17.3 Formatierte Textausgaben 859

17.4 Schreiben und Lesen aus Strings und Byte-Feldern 866

17.5 Datenströme filtern und verketten 870

17.6 Vermittler zwischen Byte-Streams und Unicode-Strömen 889

17.7 Kommunikation zwischen Threads mit Pipes * 891

17.8 Datenkompression * 895

17.9 Prüfsummen 906

17.10 Persistente Objekte und Serialisierung 909

17.11 Alternative Datenaustauschformate 926

17.12 Tokenizer * 929

17.13 Zum Weiterlesen 932




18 Die eXtensible Markup Language (XML) 933

18.1 Auszeichnungssprachen 933

18.2 Eigenschaften von XML-Dokumenten 934

18.3 Die Java-APIs für XML 944

18.4 Java Architecture for XML Binding (JAXB) 947

18.5 Serielle Verarbeitung mit StAX 965

18.6 Serielle Verarbeitung von XML mit SAX * 975

18.7 XML-Dateien mit JDOM verarbeiten 980

18.8 Transformationen mit XSLT * 998

18.9 XML-Schema-Validierung * 1001

18.10 Zum Weiterlesen 1003




19 Grafische Oberflächen mit Swing 1005

19.1 Das Abstract Window Toolkit und Swing 1005

19.2 Mit NetBeans zur ersten Oberfläche 1010

19.3 Fenster unter grafischen Oberflächen 1021

19.4 Beschriftungen (JLabel) 1026

19.5 Icon und ImageIcon für Bilder auf Swing-Komponenten 1030

19.6 Es tut sich was -- Ereignisse beim AWT 1034

19.7 Schaltflächen 1044

19.8 Swing Action * 1050

19.9 JComponent und Component als Basis aller Komponenten 1052

19.10 Container 1062

19.11 Alles Auslegungssache: die Layoutmanager 1066

19.12 Rollbalken und Schieberegler 1079

19.13 Kontrollfelder, Optionsfelder, Kontrollfeldgruppen 1085

19.14 Fortschritte bei Operationen überwachen * 1090

19.15 Menüs und Symbolleisten 1092

19.16 Das Model-View-Controller-Konzept 1105

19.17 Auswahlmenüs, Listen und Spinner 1107

19.18 Textkomponenten 1118

19.19 Tabellen (JTable) 1127

19.20 Bäume (JTree) 1143

19.21 JRootPane und JDesktopPane * 1147

19.22 Dialoge und Window-Objekte 1150

19.23 Flexibles Java-Look-and-Feel 1160

19.24 Swing-Komponenten neu erstellen oder verändern * 1162

19.25 Die Zwischenablage (Clipboard) 1163

19.26 AWT, Swing und die Threads 1168

19.27 Barrierefreiheit mit der Java Accessibility API 1176

19.28 Zeitliches Ausführen mit dem javax.swing.Timer 1177

19.29 Zum Weiterlesen 1177




20 Grafikprogrammierung 1179

20.1 Grundlegendes zum Zeichnen 1179

20.2 Einfache Zeichenmethoden 1183

20.3 Zeichenketten schreiben und Fonts 1188

20.4 Geometrische Objekte 1197

20.5 Das Innere und Äußere einer Form 1205

20.6 Bilder 1219
20.7 Zum Weiterlesen 1237




21 Netzwerkprogrammierung 1239

21.1 Grundlegende Begriffe 1239

21.2 URI und URL 1241

21.3 Die Klasse URLConnection * 1247

21.4 Mit GET und POST Daten übergeben * 1254

21.5 Host- und IP-Adressen 1258

21.6 Mit dem Socket zum Server 1262

21.7 Client-Server-Kommunikation 1268

21.8 Apache HttpComponents und Commons Net 1274

21.9 Zum Weiterlesen 1276




22 Verteilte Programmierung mit RMI 1277

22.1 Entfernte Objekte und Methoden 1277

22.2 Java Remote Method Invocation 1279

22.3 Auf der Serverseite 1283

22.4 Auf der Clientseite 1290

22.5 Entfernte Objekte übergeben und laden 1291

22.6 Zum Weiterlesen 1293




23 JavaServer Pages und Servlets 1295

23.1 Dynamisch generierte Webseiten 1295

23.2 Servlets und JSPs mit Tomcat entwickeln 1298

23.3 Statisches und Dynamisches 1303

23.4 Die Expression Language (EL) 1304

23.5 Formulardaten 1306

23.6 Auf Beans zurückgreifen 1308

23.7 JSP-Tag-Libraries 1312

23.8 Einbinden und Weiterleiten 1316

23.9 Skripting-Elemente in JSPs 1318

23.10 JSP-Direktiven 1321

23.11 Sitzungsverfolgung (Session Tracking) 1324

23.12 Servlets 1326

23.13 Zum Weiterlesen 1333




24 Datenbankmanagement mit JDBC 1335

24.1 Relationale Datenbanken 1335

24.2 Datenbanken und Tools 1336

24.3 JDBC und Datenbanktreiber 1342

24.4 Eine Beispielabfrage 1345

24.5 Mit Java an eine Datenbank andocken 1351

24.6 Datenbankabfragen 1357

24.7 Elemente einer Datenbank hinzufügen und aktualisieren 1365

24.8 Vorbereitete Anweisungen (Prepared Statements) 1370

24.9 Transaktionen 1372

24.10 Metadaten * 1373

24.11 Vorbereitete Datenbankverbindungen 1376

24.12 Einführung in SQL 1380

24.13 Zum Weiterlesen 1384




25 Reflection und Annotationen 1385

25.1 Metadaten 1385

25.2 Metadaten der Klassen mit dem Class-Objekt 1386

25.3 Attribute, Methoden und Konstruktoren 1396

25.4 Objekte erzeugen und manipulieren 1407

25.5 Methoden aufrufen 1415

25.6 Eigene Annotationstypen * 1417

25.7 Zum Weiterlesen 1434




26 Dienstprogramme für die Java-Umgebung 1435

26.1 Die Werkzeuge vom JDK 1435

26.2 Java-Compiler und Java-Laufzeitumgebung 1436

26.3 Das Archivformat Jar 1439

26.4 Monitoringprogramme 1444

26.5 Ant 1450

26.6 Weitere Dienstprogramme 1455

26.7 Zum Weiterlesen 1457




Anhang Die Begleit-DVD 1459




Index 1461

Verdammt große Insel, verdammt gutes Buch. "Java ist auch eine Insel" macht den Leser reif für die Insel und vermittelt gekonnt und anschaulich, was man auf "Inselrundgängen" im Bereich der Java-Programmierung so alles entdecken kann.

Reihe/Serie Galileo Computing
Verlagsort Bonn
Sprache deutsch
Maße 240 x 190 mm
Gewicht 2612 g
Themenwelt Informatik Programmiersprachen / -werkzeuge Java
Schlagworte Eclipse • EJB • Java • Java 6 (Programmiersprache) • Java 6 (Programmiersprache); Handbuch/Lehrbuch • JSP • NetBeans • Performanz • XML
ISBN-10 3-8362-1506-3 / 3836215063
ISBN-13 978-3-8362-1506-0 / 9783836215060
Zustand Neuware
Informationen gemäß Produktsicherheitsverordnung (GPSR)
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich