Christian Ullenboom

Java SE 9 Standard-Bibliothek

Das Handbuch für Entwickler. 3. Auflage
eBook (epub), 1447 Seiten
EAN 9783836258760
Veröffentlicht November 2017
Verlag/Hersteller Rheinwerk eBooks

Auch erhältlich als:

Buch (Hardcover)
49,90
39,92 inkl. MwSt.
Sofort Lieferbar (Download)
Teilen
Beschreibung

Die Fortsetzung des Java-Kultbuchs für Entwickler! Hier bekommen Sie umfassendes und kompetentes Praxiswissen zu den vielen Bibliotheken und Technologien in einem Band. Am Beispiel konkreter Java-Projekte zeigt Christian Ullenboom, was man wissen muss über Swing/JavaFX, Netzwerk- und Grafikprogrammierung, RMI und Web-Services, JDBC, Reflection und Annotationen, Logging und Monitoring, Java Native Interface (JNI) und vieles mehr. Dieses Buch ist Ihr unersetzlicher Begleiter bei der täglichen Arbeit! Aus dem Inhalt: - Neues in Java 9 - Threads und nebenläufige Programmierung - Datenstrukturen und Algorithmen - Raum und Zeit - Dateien, Verzeichnisse und Dateizugriffe - Datenströme - eXtensible Markup Language - Grafische Oberflächen mit Swing/JavaFX - Grafik- und Netzwerkprogrammierung - Verteilte Programmierung mit RMI - Datenbankmanagement mit JDBC - Reflection und Annotationen - Logging und Monitoring Die Fachpresse zur Vorauflage: iX - Magazin für professionelle Informationstechnik: »Ein »Wunderwerk«« PHP Nuke: »Ein wichtiges Java-Standardwerk! Der Schreibstil ist fantastisch. « cc13.com: »Unverzichtbares Nachschlagewerk, uneingeschränkt zu empfehlen!«

Portrait

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

1. Vorwort ... 35 1. Neues in Java 9 ... 43 1.1 ... Klassenlader (Class Loader) und Modul-/Klassenpfad ... 43 1.2 ... Module entwickeln und einbinden ... 49 1.3 ... Sprachänderungen in Java 9 ... 64 1.4 ... Bibliotheksänderungen in Java 9 ... 65 1.5 ... Änderungen in den Werkzeugen von Java 9 ... 65 1.6 ... JDK 9-HotSpot-JVM-Änderungen ... 66 1.7 ... Zum Weiterlesen ... 66 2. Die Klassenbibliothek ... 67 2.1 ... Die Java-Klassenphilosophie ... 67 2.2 ... Die Utility-Klassen System und Properties ... 74 2.3 ... Versionskennungen auslesen, aufbauen, parsen und vergleichen ... 84 2.4 ... Einfache Benutzereingaben ... 86 2.5 ... Benutzereinstellungen * ... 88 2.6 ... Maven: Build-Management und Abhängigkeiten auflösen ... 95 2.7 ... Zum Weiterlesen ... 99 3. Fortgeschrittene String-Verarbeitung ... 101 3.1 ... Erweiterte Zeicheneigenschaften ... 101 3.2 ... Reguläre Ausdrücke ... 104 3.3 ... Zerlegen von Zeichenketten ... 122 3.4 ... Zeichenkodierungen, XML/HTML-Entities, Base64 * ... 137 3.5 ... Ausgaben formatieren ... 142 3.6 ... Sprachabhängiges Vergleichen und Normalisierung * ... 154 3.7 ... Phonetische Vergleiche * ... 159 3.8 ... Zum Weiterlesen ... 160 4. Datenstrukturen und Algorithmen ... 161 4.1 ... Datenstrukturen und die Collection-API ... 161 4.2 ... Listen ... 173 4.3 ... Mengen (Sets) ... 191 4.4 ... Queues (Schlangen) und Deques ... 201 4.5 ... Stack (Kellerspeicher, Stapel) ... 209 4.6 ... Assoziative Speicher ... 211 4.7 ... Immutable Datenstrukturen ... 235 4.8 ... Mit einem Iterator durch die Daten wandern ... 245 4.9 ... Algorithmen in Collections ... 255 4.10 ... Datenstrukturen mit Änderungsmeldungen ... 268 4.11 ... Stream-API ... 278 4.12 ... Spezielle threadsichere Datenstrukturen ... 317 4.13 ... Google Guava (Google Collections Library) ... 327 4.14 ... Die Klasse BitSet für Bitmengen * ... 332 4.15 ... Zum Weiterlesen ... 338 5. Threads und nebenläufige Programmierung ... 339 5.1 ... Threads erzeugen ... 339 5.2 ... Thread-Eigenschaften und Zustände ... 344 5.3 ... Der Ausführer (Executor) kommt ... 360 5.4 ... Synchronisation über kritische Abschnitte ... 372 5.5 ... Synchronisation über Warten und Benachrichtigen ... 396 5.6 ... Datensynchronisation durch besondere Concurrency-Klassen * ... 408 5.7 ... Atomare Operationen und frische Werte mit volatile * ... 414 5.8 ... Teile und herrsche mit Fork und Join * ... 418 5.9 ... Mit dem Thread verbundene Variablen * ... 424 5.10 ... Threads in einer Thread-Gruppe * ... 430 5.11 ... Reaktive Programmierung und die Flow-API * ... 438 5.12 ... Zeitgesteuerte Abläufe ... 440 5.13 ... Ausführen externer Programme, Starten von Prozessen * ... 442 5.14 ... Den Stack-Trace erfragen * ... 450 5.15 ... Einen Abbruch der virtuellen Maschine erkennen ... 455 5.16 ... Zum Weiterlesen ... 457 6. Raum und Zeit ... 459 6.1 ... Sprachen der Länder ... 459 6.2 ... Internationalisierung und Lokalisierung ... 463 6.3 ... Weltzeit * ... 468 6.4 ... Wichtige Datum-Klassen im Überblick ... 469 6.5 ... Die Klasse Date ... 472 6.6 ... Date-Time-API ... 474 6.7 ... Calendar und GregorianCalendar ... 504 6.8 ... Zeitzonen in Java * ... 517 6.9 ... Formatieren und Parsen von Date-Objekten ... 520 6.10 ... Die Default-Falle ... 528 6.11 ... Zum Weiterlesen ... 529 7. Dateien, Verzeichnisse und Dateizugriffe ... 531 7.1 ... Alte und neue Welt in java.io und java.nio ... 531 7.2 ... Dateisysteme und Pfade ... 533 7.3 ... Datei- und Verzeichnisoperationen mit der Klasse File ... 569 7.4 ... Dateien mit wahlfreiem Zugriff ... 585 7.5 ... Wahlfreier Zugriff mit SeekableByteChannel und ByteBuffer * ... 591 7.6 ... Zum Weiterlesen ... 595 8. Datenströme ... 597 8.1 ... Basisklassen für die Ein-/Ausgabe ... 597 8.2 ... Lesen aus Dateien und Schreiben in Dateien ... 610 8.3 ... Übersicht über Ein-/Ausgabeklassen ... 616 8.4 ... Formatierte Textausgaben ... 620 8.5 ... Die FileXXX-Stromklassen ... 628 8.6 ... Schreiben und Lesen aus Strings und Byte-Feldern ... 635 8.7 ... Datenströme filtern und verketten ... 640 8.8 ... Vermittler zwischen Byte-Streams und Unicode-Strömen ... 653 8.9 ... Kommunikation zwischen Threads mit Pipes * ... 657 8.10 ... Prüfsummen ... 660 8.11 ... Persistente Objekte und Serialisierung ... 664 8.12 ... Alternative Datenaustauschformate ... 685 8.13 ... Zum Weiterlesen ... 688 9. Dateiformate ... 689 9.1 ... Einfache Dateiformate für strukturierte Daten ... 690 9.2 ... Dokumentenformate ... 694 9.3 ... Datenkompression * ... 697 9.4 ... Bildformate ... 711 9.5 ... Audiodateien ... 711 9.6 ... Zum Weiterlesen ... 715 10. Die eXtensible Markup Language (XML) und JSON ... 717 10.1 ... Auszeichnungssprachen ... 717 10.2 ... Eigenschaften von XML-Dokumenten ... 718 10.3 ... Die Java-APIs für XML ... 729 10.4 ... Java Architecture for XML Binding (JAXB) ... 732 10.5 ... Serielle Verarbeitung mit StAX ... 755 10.6 ... Serielle Verarbeitung von XML mit SAX * ... 768 10.7 ... XML-Dateien mit JDOM verarbeiten ... 772 10.8 ... Transformationen mit XSLT * ... 794 10.9 ... XML-Schema-Validierung * ... 797 10.10 ... JSON-Serialisierung mit Jackson-Datenformat ... 799 10.11 ... Zum Weiterlesen ... 803 11. Netzwerkprogrammierung ... 805 11.1 ... Grundlegende Begriffe ... 805 11.2 ... URI und URL ... 807 11.3 ... URL-Parameter kodieren ... 812 11.4 ... Die Klassen URLConnection und HttpURLConnection ... 813 11.5 ... Host- und IP-Adressen ... 822 11.6 ... Socket-Verbindungen ... 827 11.7 ... HTTP Client API in Java 9 ... 841 11.8 ... Neue externe Netzwerkbibliotheken * ... 843 11.9 ... Arbeitsweise eines Webservers * ... 844 11.10 ... Verbindungen durch einen Proxy-Server * ... 853 11.11 ... Bidirektionale binäre Webkommunikation über WebSockets * ... 855 11.12 ... Datagram-Sockets * ... 856 11.13 ... Tiefer liegende Netzwerkeigenschaften * ... 862 11.14 ... Zum Weiterlesen ... 863 12. RESTful und SOAP-Web-Services ... 865 12.1 ... Web-Services ... 865 12.2 ... RESTful Web-Services ... 866 12.3 ... Daily Soap und das SOAP-Protokoll ... 868 12.4 ... Zum Weiterlesen ... 874 13. Verteilte Programmierung mit RMI ... 875 13.1 ... Entfernte Objekte und Methoden ... 875 13.2 ... Java Remote Method Invocation ... 877 13.3 ... Auf der Serverseite ... 881 13.4 ... Auf der Client-Seite ... 889 13.5 ... Entfernte Objekte übergeben und laden ... 890 13.6 ... Automatische Remote-Objekt-Aktivierung ... 891 13.7 ... Java Message Service (JMS) ... 892 13.8 ... Zum Weiterlesen ... 892 14. Typen, Reflection und Annotationen ... 895 14.1 ... Metadaten ... 895 14.2 ... Die Klasse Class ... 896 14.3 ... Klassenlader ... 899 14.4 ... Metadaten der Typen mit dem Class-Objekt ... 905 14.5 ... Attribute, Methoden und Konstruktoren ... 915 14.6 ... Objekte erzeugen und manipulieren ... 927 14.7 ... Schneller aufrufen mit MethodType und MethodHandle ... 941 14.8 ... Eigene Annotationstypen * ... 942 14.9 ... Zum Weiterlesen ... 962 15. Logging und Monitoring ... 963 15.1 ... Logging mit Java ... 963 15.2 ... Systemzustände überwachen ... 976 15.3 ... MBean-Typen, MBean-Server und weitere Begriffe ... 976 15.4 ... Geschwätzige Programme und JConsole ... 979 15.5 ... Der MBeanServer ... 981 15.6 ... Eine eigene Standard-MBean ... 982 15.7 ... Zum Weiterlesen ... 986 16. Datenbankmanagement mit JDBC ... 987 16.1 ... Relationale Datenbanken und Datenbankmanagementsysteme ... 987 16.2 ... JDBC und Datenbanktreiber ... 993 16.3 ... Eine Beispielabfrage ... 995 16.4 ... Mit Java an eine Datenbank andocken ... 996 16.5 ... Datenbankabfragen ... 1003 16.6 ... Elemente einer Datenbank ändern ... 1013 16.7 ... Die Ausnahmen bei JDBC, SQLException und Unterklassen ... 1016 16.8 ... ResultSet und RowSet * ... 1019 16.9 ... Vorbereitete Anweisungen (Prepared Statements) ... 1023 16.10 ... Transaktionen ... 1026 16.11 ... Vorbereitete Datenbankverbindungen ... 1027 16.12 ... Zum Weiterlesen ... 1031 17. Grafische Oberflächen mit Swing ... 1033 17.1 ... AWT, JavaFoundation Classes und Swing ... 1033 17.2 ... Mit NetBeans zur ersten Swing-Oberfläche ... 1038 17.3 ... Aller Swing-Anfang -- Fenster zur Welt ... 1049 17.4 ... Beschriftungen (JLabel) ... 1057 17.5 ... Icon und ImageIcon für Bilder auf Swing-Komponenten ... 1060 17.6 ... Es tut sich was -- Ereignisse beim AWT ... 1062 17.7 ... Schaltflächen ... 1076 17.8 ... Textkomponenten ... 1081 17.9 ... Swing Action * ... 1093 17.10 ... JComponent und Component als Basis aller Komponenten ... 1095 17.11 ... Container ... 1108 17.12 ... Alles Auslegungssache -- die Layoutmanager ... 1112 17.13 ... Rollbalken und Schieberegler ... 1126 17.14 ... Kontrollfelder, Optionsfelder, Kontrollfeldgruppen ... 1131 17.15 ... Fortschritte bei Operationen überwachen * ... 1137 17.16 ... Menüs und Symbolleisten ... 1139 17.17 ... Das Model-View-Controller-Konzept ... 1155 17.18 ... Auswahlmenüs, Listen und Spinner ... 1157 17.19 ... Tabellen (JTable) ... 1172 17.20 ... Bäume (JTree) ... 1187 17.21 ... Dialoge und Window-Objekte ... 1192 17.22 ... Flexibles Java-Look-and-Feel ... 1201 17.23 ... Swing-Komponenten neu erstellen oder verändern * ... 1203 17.24 ... Die Zwischenablage (Clipboard) ... 1206 17.25 ... AWT, Swing und die Threads ... 1211 17.26 ... Barrierefreiheit mit der Java Accessibility API ... 1219 17.27 ... Zeitliches Ausführen mit dem javax.swing.Timer ... 1220 17.28 ... Zum Weiterlesen ... 1221 18. Grafikprogrammierung ... 1223 18.1 ... Grundlegendes zum Zeichnen ... 1223 18.2 ... Einfache Zeichenmethoden ... 1229 18.3 ... Zeichenketten schreiben und Fonts ... 1233 18.4 ... Geometrische Objekte ... 1239 18.5 ... Das Innere und Äußere einer Form ... 1242 18.6 ... Bilder ... 1249 18.7 ... Weitere Eigenschaften von Graphics * ... 1263 18.8 ... Drucken * ... 1271 18.9 ... Benutzerinteraktionen automatisieren, Robot und Screenshots * ... 1274 18.10 ... Zum Weiterlesen ... 1280 19. JavaFX ... 1281 19.1 ... Das erste Programm mit JavaFX ... 1281 19.2 ... Zentrale Typen in JavaFX ... 1284 19.3 ... JavaFX-Komponenten und Layout-Container-Klassen ... 1286 19.4 ... Webbrowser ... 1290 19.5 ... Geometrische Objekte ... 1291 19.6 ... Füllart von Formen ... 1304 19.7 ... Grafiken ... 1308 19.8 ... Deklarative Oberflächen mit FXML ... 1313 19.9 ... Diagramme (Charts) ... 1315 19.10 ... Animationen ... 1319 19.11 ... Medien abspielen ... 1322 19.12 ... Java 3D ... 1323 19.13 ... Das Geometry-Paket * ... 1323 19.14 ... JavaFX-Scene in Swing-Applikationen einbetten ... 1324 19.15 ... Zum Weiterlesen ... 1326 20. Sicherheitskonzepte ... 1327 20.1 ... Zentrale Elemente der Java-Sicherheit ... 1327 20.2 ... Sicherheitsmanager (Security-Manager) ... 1330 20.3 ... Signierung ... 1338 20.4 ... Kryptografische Hashfunktion ... 1341 20.5 ... Verschlüsseln von Daten(-strömen) * ... 1346 20.6 ... Zum Weiterlesen ... 1349 21. Dynamische Übersetzung, Skriptsprachen, JShell ... 1351 21.1 ... Codegenerierung ... 1352 21.2 ... Programme mit der Java Compiler API übersetzen ... 1356 21.3 ... Ausführen von Skripten ... 1366 21.4 ... JShell, die interaktive REPL-Shell ... 1375 21.5 ... Zum Weiterlesen ... 1381 22. Java Native Interface (JNI) ... 1383 22.1 ... Java Native Interface und Invocation-API ... 1383 22.2 ... Eine C-Funktion in ein Java-Programm einbinden ... 1384 22.3 ... Dynamische Bibliotheken erzeugen ... 1386 22.4 ... Erweiterte JNI-Eigenschaften ... 1392 22.5 ... Einfache Anbindung von existierenden Bibliotheken ... 1397 22.6 ... Invocation-API ... 1399 22.7 ... Zum Weiterlesen ... 1400 23. Dienstprogramme für die Java-Umgebung ... 1401 23.1 ... Programme des JDK ... 1401 23.2 ... Monitoringprogramme vom JDK ... 1401 23.3 ... Ant ... 1411 23.4 ... Disassembler, Decompiler und Obfuscator ... 1417 23.5 ... Weitere Dienstprogramme ... 1426 23.6 ... Zum Weiterlesen ... 1426 Index ... 1427

Technik
Sie können dieses eBook zum Beispiel mit den folgenden Geräten lesen:
• tolino Reader 
Laden Sie das eBook direkt über den Reader-Shop auf dem tolino herunter oder übertragen Sie das eBook auf Ihren tolino mit einer kostenlosen Software wie beispielsweise Adobe Digital Editions. 
• Sony Reader & andere eBook Reader 
Laden Sie das eBook direkt über den Reader-Shop herunter oder übertragen Sie das eBook mit der kostenlosen Software Sony READER FOR PC/Mac oder Adobe Digital Editions auf ein Standard-Lesegeräte. 
• Tablets & Smartphones 
Möchten Sie dieses eBook auf Ihrem Smartphone oder Tablet lesen, finden Sie hier unsere kostenlose Lese-App für iPhone/iPad und Android Smartphone/Tablets. 
• PC & Mac 
Lesen Sie das eBook direkt nach dem Herunterladen mit einer kostenlosen Lesesoftware, beispielsweise Adobe Digital Editions, Sony READER FOR PC/Mac oder direkt über Ihre eBook-Bibliothek in Ihrem Konto unter „Meine eBooks“ -  „Sofort online lesen über Meine Bibliothek“.
 
Bitte beachten Sie, dass die Kindle-Geräte das Format nicht unterstützen und dieses eBook somit nicht auf Kindle-Geräten lesbar ist.
Hersteller
Libri GmbH
Friedensallee 273

DE - 22763 Hamburg

E-Mail: GPSR@libri.de

Website: www.libri.de

Das könnte Sie auch interessieren

Julia Ruhs
Links-grüne Meinungsmacht
Buch (Softcover)
Sofort lieferbar
20,00
Sarah Kuttner
Mama & Sam
Buch (Hardcover)
Sofort lieferbar
24,00
Aldous Huxley
Zeit der Oligarchen
Buch (Hardcover)
Lieferbar innerhalb von 1-2 Wochen
14,00
Katharina Zweig
Weiß die KI, dass sie nichts weiß?
Buch (Softcover)
Sofort lieferbar
20,00
Marc-Uwe Kling
Der Tag, an dem die Oma das Internet kaputt...
Buch (Hardcover)
Sofort lieferbar
12,00
Sofort lieferbar
3,50
Tim Berners-Lee
This Is for Everyone
Buch (Hardcover)
Sofort lieferbar
28,00
Martin Andree
Krieg der Medien
Buch (Hardcover)
Sofort lieferbar
28,00
Jimmy Wales
TRUST
Buch (Hardcover)
Sofort lieferbar
24,00
Annekathrin Kohout
Hyperreaktiv
Buch (Softcover)
Sofort lieferbar
18,00
Steffen Mau
Triggerpunkte
Buch (Softcover)
Lieferbar innerhalb von 1-2 Wochen
25,00
Aya Jaff
Broligarchie
Buch (Hardcover)
Lieferbar innerhalb von 1-2 Wochen
23,99
Christoph Engemann
Die Zukunft des Lesens
Buch (Softcover)
Sofort lieferbar
14,00
Sofort lieferbar
19,90
Frank-Michael Becker
Formelsammlung bis zum Abitur - Mathematik ...
Buch (Softcover)
Sofort lieferbar
16,50
Jörg Rieger Espind...
Windows 11 für Senioren
Buch (Softcover)
Sofort lieferbar
19,90
Keach Hagey
Sam Altman
Buch (Hardcover)
Sofort lieferbar
28,00
Cornelia Lohs
Der inoffizielle James Bond Reiseführer
Buch (Softcover)
Sofort lieferbar
19,99
Johannes Knörzer
Ein Quantum Zukunft - Quantenphysik und Qua...
Buch (Softcover)
Lieferbar innerhalb von 5-7 Tagen
24,99
Ursula Poznanski
Erebos 2
Buch (Hardcover)
Sofort lieferbar
19,95
Albert Wiedemann
Informatik (Oldenbourg) Band 7: Grundkurs ...
Buch (Hardcover)
Lieferbar innerhalb von 2 Wochen
33,50
Oliver Bock
ChatGPT - Das Praxisbuch
Buch (Softcover)
Sofort lieferbar
19,95
Douglas Rushkoff
Survival of the Richest
Buch (Softcover)
Sofort lieferbar
22,00
Ingo Dachwitz
Digitaler Kolonialismus
Buch (Hardcover)
Sofort lieferbar
28,00
Johanna Pirker
The Game is On
Buch (Hardcover)
Sofort lieferbar
26,00
Robert Klaßen
Windows 11
Buch (Softcover)
Sofort lieferbar
12,90
Rainer Hattenhauer
ChatGPT u. Co.
Buch (Softcover)
Sofort lieferbar
24,90
Vera Weidenbach
Ada Lovelace
Buch (Hardcover)
Sofort lieferbar
24,00
@Kriegundfreitag
Psyche, du kleiner Schlingel
Buch (Hardcover)
Sofort lieferbar
14,00
Inga Strümke
Künstliche Intelligenz
Buch (Hardcover)
Sofort lieferbar
24,90
Sofort lieferbar
19,95
Lieferbar innerhalb von 1-2 Wochen
28,99
Tara-Louise Wittwer
Sorry, aber ...
Buch (Softcover)
Lieferbar innerhalb von 1-2 Wochen
18,00
Uwe Albrecht
iPhone und iPad
Buch (Softcover)
Lieferbar innerhalb von 1-2 Wochen
19,90
Christian Immler
WhatsApp - optimal nutzen - neueste Version...
Buch (Softcover)
Sofort lieferbar
12,95
Bernhard Pörksen
Zuhören
Buch (Hardcover)
Sofort lieferbar
24,00