Seit der Vorauflage von "Effective Java", die kurz nach dem Release von Java 6 erschienen ist, hat sich Java dramatisch verändert. Dieser preisgekrönte Klassiker wurde nun gründlich aktualisiert, um die neuesten Sprach- und Bibliotheksfunktionen vorzustellen. Erneut zeigt Java-Kenner Joshua Bloch anhand von Best Practices, wie Java moderne Programmierparadigmen unterstützt.Wie in früheren Ausgaben besteht jedes Kapitel von "Effective Java" aus mehreren Themen, die jeweils in Form eines kurzen, eigenständigen Essays präsentiert werden. Dieses enthält jeweils spezifische Ratschläge, Einblicke in die Feinheiten der Java-Plattform und Codebeispiele. Umfassende Beschreibungen und Erklärungen für jedes Thema beleuchten, was zu tun ist, was nicht zu tun ist und warum es zu tun ist.Die dritte Auflage behandelt Sprach- und Bibliotheksfunktionen, die in Java 7, 8 und 9 hinzugefügt wurden, einschließlich der funktionalen Programmierkonstrukte. Neue Themen sind unter anderem: - Functional Interfaces, Lambda-Ausdrücke, Methodenreferenzen und Streams- Default- und statische Methoden in Interfaces- Type Inference, einschließlich des Diamond-Operators für generische Typen- Die Annotation @SafeVarargs- Das Try-with-Resources-Statement- Neue Bibliotheksfunktionen wie das Optional Interface, java.time und die Convenience-Factory-Methoden für Collections

- 410 Seiten
- German
- ePUB (handyfreundlich)
- Über iOS und Android verfügbar
eBook - ePub
Über dieses Buch
Information
Thema
InformatikThema
Softwareentwicklung1Einleitung
Dieses Buch soll Ihnen helfen, die Programmiersprache Java und ihre grundlegenden Bibliotheken wie java.lang, java.util und java.io sowie deren Unterpakete wie java.util.concurrent und java.util.function effektiv zu nutzen. Gelegentlich wird, wo nötig, auch auf andere Bibliotheken eingegangen.
Dieses Buch besteht aus neunzig Themen, die jeweils eine Regel vermitteln. Die Regeln beschreiben Praktiken, die die besten und erfahrensten Programmierer als nützlich erachten. Die Themen sind in den folgenden elf Kapiteln lose zusammengefasst, von denen jedes einen umfangreichen Aspekt des Software-designs abdeckt. Das Buch ist nicht dafür konzipiert, um von Anfang bis Ende gelesen zu werden: Jedes Thema steht mehr oder weniger für sich allein. Die Themen sind mit vielen Querverweisen versehen, die Ihnen helfen, Ihrem eigenen Weg durch das Buch zu folgen.
Seit der letzten Ausgabe dieses Buchs wurden viele neue Features in die Plattform integriert. Die meisten Themen in diesem Buch gehen in irgendeiner Weise auf diese Features ein. Die folgende Tabelle zeigt Ihnen, wo Sie die wichtigsten Features ausführlicher besprochen werden:
Feature | Thema | Version |
Lambdas | Themen 42–44 | Java 8 |
Streams | Themen 45–48 | Java 8 |
Optionale | Thema 55 | Java 8 |
Standardmethoden in Schnittstellen | Thema 21 | Java 8 |
try-with-resources | Thema 9 | Java 7 |
@SafeVarargs | Thema 32 | Java 7 |
Module | Thema 15 | Java 9 |
Die meisten Themen werden anhand von Programmbeispielen veranschaulicht. Ein Charakteristikum dieses Buchs ist dabei, dass seine Code-Beispiele viele Designmuster und Idiome illustrieren. Wo es angebracht ist, finden Sie zudem Querverweise auf das dem Thema entsprechende Standardwerk [Gamma95].
Viele Themen enthalten auch ein oder mehrere Negativbeispiele aus der Programmierpraxis. Solche Beispiele, die manchmal auch als Anti-Pattern bezeichnet werden, sind eindeutig mit einem Kommentar wie // So nicht! versehen. In allen Fällen wird erklärt, warum das Beispiel schlecht ist, und ein alternativer Ansatz aufgezeigt.
Dieses Buch ist nicht für Anfänger gedacht: Es geht davon aus, dass Sie sich bereits mit Java auskennen. Wenn das nicht der Fall ist, sollten Sie eine der vielen sehr guten Einführungen, wie Java Precisely von Peter Sestoft [Sestoft16], in Betracht ziehen. Effective Java ist so konzipiert, dass jeder mit ausreichenden Sprachkenntnissen etwas damit anfangen kann, dennoch kann es auch fortgeschrittenen Programmierern eine Hilfe sein und Denkanstöße liefern.
Den meisten Regeln in diesem Buch liegen einige wenige Grundprinzipien zugrunde. Das Hauptaugenmerk liegt auf Klarheit und Einfachheit. Der Benutzer einer Komponente sollte nie von ihrem Verhalten überrascht werden. Die Komponenten selbst sollten so klein wie möglich, aber nicht kleiner sein. In diesem Buch bezieht sich der Begriff Komponente auf jedes wiederverwendbare Softwareelement, von einer einzelnen Methode bis hin zu einem komplexen Framework, das aus mehreren Paketen besteht. Code sollte wiederverwendet und nicht kopiert werden. Die Abhängigkeiten zwischen den Komponenten sollten auf ein Minimum beschränkt sein. Fehler sollten nach ihrem Auftreten so schnell wie möglich erkannt werden, im Idealfall zur Kompilierzeit.
Die Regeln in diesem Buch treffen zwar nicht in hundert Prozent der Fälle zu, erweisen sich aber in den allermeisten Fällen als beste Programmierpraxis. Dennoch sollten Sie diese Regeln nicht sklavisch befolgen; wenn es einen guten Grund gibt, dürfen Sie sie auch gelegentlich verletzen. Beim Programmieren lernen sollten Sie, wie in den meisten anderen Disziplinen, zuerst die Regeln lernen und dann, wann man sie verletzen darf.
Meistens geht es in diesem Buch nicht um Performance, sondern darum, Programme zu schreiben, die klar, korrekt, stabil, flexibel sowie benutzer- und wartungsfreundlich sind. Wenn Sie das hinbekommen, ist es in der Regel relativ einfach, die gewünschte Leistung zu erhalten (Thema 67). Einige Themen befassen sich mit Performance-Problemen und liefern zum Teil sogar Performance-Zahlen. Diese Zahlen, die mit »Auf meinem Rechner« eingeleitet werden, sind bestenfalls als approximative Werte zu lesen.
Für Interessierte: Mein Rechner ist ein schon älterer, selbst zusammengebastelter 3,5 GHz Quad-Core Intel Core i7-4770K mit 16 Gigabyte DDR3-1866 CL9 RAM, auf dem die Azul Zulu-Version 9.0.0.0.15 des OpenJDK unter Microsoft Windows 7 Professional SP1 (64-bit) installiert ist.
Bei der Diskussion von Features der Programmiersprache Java und ihrer Bibliotheken ist es manchmal notwendig, auf bestimmte Versionen zu verweisen. Der Einfachheit halber werden in diesem Buch Kurzbezeichnungen anstelle der offiziellen Versionsnamen verwendet. Diese Tabelle zeigt eine Zuordnung der Versionsnamen zu den Kurzbezeichnungen:
Offizieller Versionsname | Kurzbezeichnung |
JDK 1.0.x | Java 1.0 |
JDK 1.1.x | Java 1.1 |
Java 2 Platform, Standard Editio... |
Inhaltsverzeichnis
- Cover
- Titel
- Impressum
- Inhaltsverzeichnis
- Vorbemerkung
- Vorwort
- Danksagung
- 1 Einleitung
- 2 Objekte erzeugen und auflösen
- 3 Methoden, die allen Objekten gemeinsam sind
- 4 Klassen und Schnittstellen
- 5 Java Generics
- 6 Aufzählungen und Annotationen
- 7 Lambdas und Streams
- 8 Methoden
- 9 Allgemeine Programmierung
- 10 Ausnahmen
- 11 Nebenläufigkeit
- 12 Serialisierung
- Index
- Literatur
375,005 Studierende vertrauen auf uns
Zugang zu über 1,5 Millionen Titeln zu einem fairen monatlichen Preis.
Mit unseren Lerntools kannst du noch effizienter lernen.
Häufig gestellte Fragen
Ja, du kannst dein Abo jederzeit über den Tab Abo in deinen Kontoeinstellungen auf der Perlego-Website kündigen. Dein Abo bleibt bis zum Ende deines aktuellen Abrechnungszeitraums aktiv. Erfahre, wie du dein Abo kündigen kannst
Nein, Bücher können nicht als externe Dateien, z. B. PDFs, zur Verwendung außerhalb von Perlego heruntergeladen werden. Du kannst jedoch Bücher in der Perlego-App herunterladen, um sie offline auf deinem Smartphone oder Tablet zu lesen. Erfahre, wie du Bücher herunterladen kannst, um sie offline zu lesen
Perlego bietet zwei Pläne an: Essential und Complete
- Essential ist ideal für Lernende und Fachkräfte, die es genießen, eine Vielzahl von Themen zu erkunden. Greife auf die Essential Library mit über 800.000 vertrauenswürdigen Titeln und Bestsellern in den Bereichen Wirtschaft, persönliche Weiterentwicklung und Geisteswissenschaften zu. Enthält unbegrenzte Lesezeit und Standard-Vorlesestimme.
- Complete: Perfekt für fortgeschrittene Lernende und Forschende, die vollen, uneingeschränkten Zugriff benötigen. Entsperre über 1,5 Millionen Bücher zu Hunderten von Themen, einschließlich akademischen und spezialisierten Titeln. Der Complete-Plan enthält außerdem fortschrittliche Funktionen wie Premium Vorlesen und Forschungsassistent.
Wir sind ein Online-Lehrbuch-Abonnement-Service, bei dem du für weniger als den Preis eines einzelnen Buchs pro Monat Zugriff auf eine gesamte Online-Bibliothek erhältst. Bei über 1,5 Millionen Büchern zu mehr als 990 Themen bist du bestens versorgt! Erfahre mehr über unsere Mission
Achte auf das Symbol zum Vorlesen bei deinem nächsten Buch, um zu sehen, ob du es dir auch anhören kannst. Bei diesem Tool wird dir Text laut vorgelesen, wobei der Text beim Vorlesen auch grafisch hervorgehoben wird. Du kannst das Vorlesen jederzeit anhalten, beschleunigen und verlangsamen. Erfahre mehr über die Funktion „Vorlesen“
Ja! Du kannst die Perlego-App sowohl auf iOS- als auch auf Android-Geräten nutzen, damit du jederzeit und überall lesen kannst – sogar offline. Perfekt für den Weg zur Arbeit oder wenn du unterwegs bist.
Bitte beachte, dass wir Geräte, auf denen die Betriebssysteme iOS 13 und Android 7 oder noch ältere Versionen ausgeführt werden, nicht unterstützen können. Mehr über die Verwendung der App erfahren
Bitte beachte, dass wir Geräte, auf denen die Betriebssysteme iOS 13 und Android 7 oder noch ältere Versionen ausgeführt werden, nicht unterstützen können. Mehr über die Verwendung der App erfahren
Ja, du kannst auf Programmieren mit Java von Joshua Bloch, Dirk Louis im PDF- und/oder ePUB-Format sowie auf andere beliebte Bücher in Informatik & Softwareentwicklung zugreifen. In unserem Katalog stehen über 1,5 Millionen Bücher zur Verfügung.