Heim  >  Artikel  >  Java  >  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

PHPz
PHPzOriginal
2023-07-30 19:46:541453Durchsuche

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn