Maison >Java >javaDidacticiel >Quelle est l'importance des descripteurs de module dans les modules en Java 9 ?

Quelle est l'importance des descripteurs de module dans les modules en Java 9 ?

王林
王林avant
2023-08-31 11:49:02803parcourir

在Java 9中,模块描述符在模块中的重要性是什么?

Un module est un ensemble de classes organisées sous forme de packages et de ressources statiques (comme des fichiers de propriétés ou autres). Il fournit à l'environnement externe toutes les informations nécessaires à l'utilisation du module. Le module descriptor est la source clé du système de modules, c'est une version compilée de la déclaration du module, située dans un fichier appelé "module-info.java" à la racine de la hiérarchie des répertoires du module.

Un module se décrit à travers la déclaration de module suivante

<strong>module com.myproject.module1 {
   requires com.myproject.module2;
   exports com.myproject.project1;
   exports com.myproject.project2;
}</strong>

Voici les descriptions de certains descripteurs de module :

  • nom du module : Déclare un module nommé module.name.
  • requires module.name : Spécifie que notre module dépend de module.name, permettant au module d'accéder aux types publics exportés dans le module cible.
  • nécessite un nom de module transitif : Tout module qui dépend de ce module dépendra automatiquement de module.name.
  • exports pkg.name : Cela signifie que notre module exporte les membres publics dans le package pkg.name pour chaque module qui nécessite ce module.
  • exporte pkg.name vers module.name : Identique à ci-dessus, mais restreint les modules qui peuvent utiliser des membres publics dans le package pkg.name.
  • utilise class.name : Cela fait du module actuel un consommateur du service class.name.
  • fournit class.name avec class.name.impl : Il enregistre une classe class.name.impl qui implémente le service class.name en tant que service.
  • ouvre pkg.name : Il permet à d'autres modules d'accéder aux membres privés du package pkg.name en utilisant la réflexion.
  • ouvre pkg.name à module.name : C'est la même chose que ci-dessus, mais restreint les modules qui peuvent accéder aux membres privés de pkg.name en utilisant la réflexion.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer