Heim >Java >javaLernprogramm >So verwenden Sie das Modulsystem in Java 9 zum Trennen und Isolieren von Code
So verwenden Sie das Modulsystem in Java 9 zum Trennen und Isolieren von Code
Da die Größe der Software weiter zunimmt, nimmt auch die Komplexität des Codes weiter zu. Um Code besser zu organisieren und zu verwalten, wurde in Java 9 das Modulsystem eingeführt. Das Aufkommen des Modulsystems löst das Problem traditioneller Paketabhängigkeiten und macht die Trennung und Isolierung von Code einfacher und flexibler. In diesem Artikel wird erläutert, wie Sie mithilfe des Modulsystems in Java 9 eine Trennung und Isolierung von Code erreichen.
1. Definition des Moduls
In Java 9 können wir das Schlüsselwort module verwenden, um ein Modul zu definieren. Ein Modul besteht aus einer Reihe von Paketen, und die Zugriffsrechte der Pakete im Modul werden über das Schlüsselwort exports gesteuert. Ein Modul kann von anderen Modulen abhängen, und die Abhängigkeiten zwischen Modulen werden durch das Schlüsselwort „requires“ ausgedrückt.
Hier ist ein Beispiel für eine einfache Moduldefinition:
module com.example.myapp { requires java.base; requires com.example.mylib; exports com.example.myapp; }
In diesem Beispiel ist com.example.myapp ein Modul, das vom java.base-Modul und dem com.example.mylib-Modul abhängt. Über das Schlüsselwort exports wird das Paket com.example.myapp der Außenwelt zugänglich gemacht, und andere Module können auf das Paket zugreifen.
2. Verwendung von Modulen
Bei der Entwicklung von Java-Anwendungen können wir den Code in verschiedene Module organisieren, wobei jedes Modul für unterschiedliche Funktionen verantwortlich ist. Dies hat den Vorteil, dass der Code besser verwaltet, die Kopplung reduziert und die Wartbarkeit und Wiederverwendbarkeit des Codes verbessert werden kann.
Anhand eines einfachen Beispiels veranschaulichen wir, wie man das Modulsystem zur Trennung und Isolierung von Code nutzt. Angenommen, wir haben ein Projekt namens myapp, das aus zwei Modulen besteht: myapp und mylib.
Zuerst erstellen wir ein Modul von mylib, das eine Helper-Klasse enthält:
module mylib { exports com.example.mylib; }
Dann erstellen wir ein Modul von myapp, das vom mylib-Modul abhängt und die Helper-Klasse im mylib-Modul verwendet:
module myapp { requires mylib; exports com.example.myapp; }
In der myapp-Modul können wir das Schlüsselwort import verwenden, um Klassen im mylib-Modul einzuführen:
import com.example.mylib.Helper; public class MyApp { public static void main(String[] args) { Helper helper = new Helper(); helper.doSomething(); } }
Durch die Verwendung des Modulsystems können wir verschiedene Codemodule klar trennen und isolieren. Während der Kompilierung und Laufzeit löst die Java Virtual Machine automatisch Abhängigkeiten zwischen Modulen auf und lädt die erforderlichen Module.
3. Paketieren und Veröffentlichen von Modulen
In Java 9 können wir den Befehl jlink verwenden, um ein eigenständiges Laufzeitbild zu erstellen. Das Laufzeitimage enthält alle von der Anwendung benötigten Module und Abhängigkeiten und kann direkt in der Zielumgebung ausgeführt werden.
Angenommen, wir haben die Module myapp und mylib in JAR-Dateien gepackt. Wir können den folgenden Befehl verwenden, um ein Laufzeitabbild zu erstellen:
jlink --module-path modules --add-modules myapp --output image
Darunter gibt der Parameter --module-path das Verzeichnis an, in dem sich das Modul befindet, der Parameter --add-modules gibt das zu packende Modul an und das Der Parameter --output gibt das Ausgabeverzeichnis an.
Nach der Erstellung können wir das eigenständige Laufzeit-Image direkt ausführen:
./image/bin/java -m com.example.myapp/com.example.myapp.MyApp
Mit dem jlink-Befehl können wir eine eigenständige Anwendung einfach verpacken und veröffentlichen, wodurch der Bedarf an externen Abhängigkeiten verringert und die Anwendungseffizienz verbessert wird .
Zusammenfassung:
Das Modulsystem in Java 9 bietet uns bessere Code-Organisations- und Verwaltungslösungen. Durch die Definition von Modulen und die Verwendung von Abhängigkeiten zwischen Modulen können wir eine Trennung und Isolierung des Codes erreichen. Das Aufkommen des Modulsystems macht die Codewartung komfortabler, reduziert die Kopplung und verbessert die Wiederverwendbarkeit und Wartbarkeit des Codes. Gleichzeitig können wir mithilfe des jlink-Befehls eigenständige Laufzeitbilder erstellen, um Anwendungen zu verpacken und zu veröffentlichen, wodurch die Notwendigkeit externer Abhängigkeiten verringert und die Portabilität verbessert wird. Daher sollten wir bei der Entwicklung von Java-Anwendungen das Modulsystem in Java 9 vollständig nutzen, um die Codestruktur und die modulare Entwicklung zu optimieren.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie das Modulsystem in Java 9 zum Trennen und Isolieren von Code. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!