Java 9 - Neue Funktionen: Ein umfassender Leitfaden für Anfänger
Hallo, angehende Java-Entwickler! Ich freue mich sehr, Ihr Guide auf dieser aufregenden Reise durch die neuen Funktionen von Java 9 zu sein. Als jemand, der seit vielen Jahren Java unterrichtet, kann ich Ihnen versichern, dass diese Version einige spielverändernde Verbesserungen mit sich bringt. Also Tauchen wir ein und erkunden wir diese Funktionen gemeinsam!
Einführung in Java 9
Bevor wir uns den neuen Funktionen zuwenden, lassen Sie uns einen Moment darauf verwenden, was Java 9 überhaupt ist. Veröffentlicht im September 2017, brachte Java 9 mehrere Verbesserungen, die das Coden effizienter und unterhaltsamer machen. Es ist, als bekäme man eine glänzende neue Werkzeugkiste mit coolen Gadgets, die man nicht einmal wusste, dass man sie brauchte!
Modulsystem
Eine der wichtigsten Neuzugänge in Java 9 ist das Modulsystem, auch bekannt als Projekt Jigsaw. Jetzt weiß ich, was du denkst - "Module? Das klingt kompliziert!" Aber keine Sorge, es ist eigentlich eine prima Möglichkeit, deinen Code besser zu organisieren.
Was ist ein Modul?
Stelle dir ein Modul als Behälter für deinen Code vor. Es ist wie ein gut organisiertes Kleiderschrank, in dem alles seinen Platz hat. Jedes Modul hat:
- Einen Namen
- Eine Reihe von Paketen
- Eine Liste dessen, was es braucht (Abhängigkeiten)
- Eine Liste dessen, was es anderen Modulen anbietet
Schauen wir uns ein einfaches Beispiel an:
module com.myapp {
requires java.sql;
exports com.myapp.api;
}
In diesem Beispiel erstellen wir ein Modul namens com.myapp
. Es erfordert das Modul java.sql
(weil es einige Datenbankfunktionen benötigt) und exportiert das Paket com.myapp.api
(machend es anderen Modulen zugänglich).
REPL (Read-Eval-Print-Loop)
Java 9 führte JShell ein, ein REPL-Werkzeug.Nun, du fragst dich vielleicht, "Was zur Hölle ist REPL?" Stell dir vor, du hättest ein Gespräch mit Java, bei dem du Code-Snippets eingeben und sofort Antworten erhalten kannst. Das ist REPL!
Um JShell zu starten, gib einfach jshell
in deinem Befehlszeilen-Prompt ein. Lassen wir ein einfaches Beispiel ausprobieren:
jshell> System.out.println("Hallo, Java 9!")
Hallo, Java 9!
Ist das nicht toll? Du hast gerade Java-Code ohne Erstellung eines vollständigen Programms ausgeführt! Es ist perfekt zum Testen von Ideen oder zum Lernen neuer Konzepte.
Verbesserte JavaDocs
Dokumentation mag nicht aufregend klingen, aber glaube mir, gute Dokumentation ist der beste Freund eines Entwicklers. Java 9 hat JavaDocs sogar noch besser gemacht mit der zusätzlichen Suchfunktion und HTML5-Unterstützung.
Collection Factory Methoden
Das Erstellen von Sammlungen in Java wurde einfacher! Java 9 führte neue Factory-Methoden für Sammlungen ein. Schauen wir uns an, wie wir eine unveraenderliche Liste erstellen:
List<String> fruits = List.of("Apfel", "Banane", "Kirsche");
System.out.println(fruits);
Ausgabe:
[Apfel, Banane, Kirsche]
Ist das nicht viel sauberer als die alte Methode? Keine langatmige.ArrayList-Erstellung und Hinzufügen von Elementen einzeln mehr!
Private Interface Methoden
Java 9 ermöglicht es Ihnen, private Methoden in Schnittstellen zu haben. Das mag etwas abstrakt klingen,also schauen wir uns ein Beispiel an:
public interface MyInterface {
private static void privateMethod() {
System.out.println("Dies ist eine private Methode");
}
default void publicMethod() {
privateMethod();
System.out.println("Dies ist eine öffentliche Methode");
}
}
In diesem Beispiel kann privateMethod()
nur innerhalb der Schnittstelle verwendet werden. Es ist wie ein geheimer Helfer, den nur die Schnittstelle kennt!
Stream API Verbesserungen
Die Stream API, die in Java 8 eingeführt wurde, wurde in Java 9 noch besser. Eine coole Neuerung ist die takeWhile()
-Methode. Lassen Sie uns sie in Aktion sehen:
List<Integer> numbers = List.of(2, 4, 6, 8, 9, 10, 12);
List<Integer> evenNumbers = numbers.stream()
.takeWhile(n -> n % 2 == 0)
.collect(Collectors.toList());
System.out.println(evenNumbers);
Ausgabe:
[2, 4, 6, 8]
Dieser Code nimmt Zahlen aus der Liste, solange sie gerade sind. Sobald eine ungerade Zahl (9) erreicht wird,.stoppt er. Sehr cool, oder?
Verbesserung von Try-With-Resources
Java 7 führte try-with-resources ein, und Java 9 hat es sogar besser gemacht. Jetzt können Sie finale oder effektiv finale Variablen in try-with-resources-Anweisungen verwenden. Hier ist ein Beispiel:
BufferedReader reader = new BufferedReader(new FileReader("file.txt"));
try (reader) {
// Verwenden Sie den Reader
} catch (IOException e) {
e.printStackTrace();
}
Das macht Ihren Code sauberer und lesbarer. Es ist wie das Aufräumen deines Zimmers - alles fühlt sich einfach besser an!
Schlussfolgerung
Wir haben nur die Oberfläche dessen angerissen, was Java 9 zu bieten hat. Es gibt viele weitere Funktionen wie die Verbesserungen der Process API, die neue Versionierungsschemata und den HTTP/2-Client. Während Sie Ihre Java-Reise fortsetzen, werden Sie entdecken, wie diese Funktionen Ihr Codier-Leben einfacher und unterhaltsamer machen.
Denken Sie daran, der beste Weg zum Lernen ist durch Tun. Starten Sie therefore Ihre IDE, öffnen Sie JShell und experimentieren Sie mit diesen neuen Funktionen. Haben Sie keine Angst vor Fehlern - das ist, wie wir lernen und wachsen als Entwickler.
Frohes Coden, zukünftige Java-Experten! ?????
Credits: Image by storyset