Module java.base
Package java.lang.module

Class ModuleReference

java.lang.Object
java.lang.module.ModuleReference

public abstract class ModuleReference extends Object
模块内容的引用。

模块引用是这个类的一个具体实现,实现了这个类定义的抽象方法。它包含模块的描述符和其位置(如果已知)。它还具有创建一个ModuleReader以访问模块内容的能力,这些内容可能在Java运行时系统内部,也可能在诸如模块化JAR文件之类的工件中。

自 JDK 版本:
9
参见:
  • Constructor Details

    • ModuleReference

      protected ModuleReference(ModuleDescriptor descriptor, URI location)
      构造此类的新实例。
      参数:
      descriptor - 模块描述符
      location - 模块位置,如果未知则为null
  • Method Details

    • descriptor

      public final ModuleDescriptor descriptor()
      返回模块描述符。
      返回:
      模块描述符
    • location

      public final Optional<URI> location()
      返回此模块内容的位置(如果已知)。

      当存在时,此 URI 可用作CodeSource位置值,以便在由SecureClassLoader加载时为模块的类授予特定权限。

      返回:
      位置,如果未知则为空的Optional
    • open

      public abstract ModuleReader open() throws IOException
      打开模块内容以供读取。
      返回:
      用于读取模块的ModuleReader
      抛出:
      IOException - 如果发生 I/O 错误
      SecurityException - 如果被安全管理器拒绝