- java.lang.Object
-
- java.lang.ModuleLayer.Controller
-
- Enclosing class:
- ModuleLayer
public static final class ModuleLayer.Controller extends Object
控制模块层。 由ModuleLayer定义的创建模块层的静态方法返回一个Controller,可用于控制图层中的模块。除非另有说明,否则将
null参数传递给null中的方法将导致抛出NullPointerException。- API Note:
-
应注意
Controller对象,不应该与不受信任的代码共享。 - 从以下版本开始:
- 9
-
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 ModuleLayer.ControlleraddExports(Module source, String pn, Module target)更新模块source在图层中导出包到模块target。ModuleLayer.ControlleraddOpens(Module source, String pn, Module target)更新模块source在图层中打开一个包到模块target。ModuleLayer.ControlleraddReads(Module source, Module target)更新模块source在图层中读取模块target。ModuleLayerlayer()返回此对象控制的图层。
-
-
-
方法详细信息
-
layer
public ModuleLayer layer()
返回此对象控制的图层。- 结果
- 模块层
-
addReads
public ModuleLayer.Controller addReads(Module source, Module target)
更新模块source在图层中读取模块target。 如果source已经读取target此方法是target。- Implementation Note:
-
读取通过此方法添加的
边缘
较弱,并且不能阻止
target在source强烈可达时被GC'ed。 - 参数
-
source- 源模块 -
target- 要读取的目标模块 - 结果
- 这个控制器
- 异常
-
IllegalArgumentException- 如果source不在模块层 - 另请参见:
-
Module.addReads(java.lang.Module)
-
addExports
public ModuleLayer.Controller addExports(Module source, String pn, Module target)
更新模块source在图层中导出包到模块target。 如果source已经将包导出至少target此方法是target。- 参数
-
source- 源模块 -
pn- 包名称 -
target- 目标模块 - 结果
- 这个控制器
- 异常
-
IllegalArgumentException- 如果source不在模块层或包不在源模块中 - 另请参见:
-
Module.addExports(java.lang.String, java.lang.Module)
-
addOpens
public ModuleLayer.Controller addOpens(Module source, String pn, Module target)
更新模块source在图层中打开一个包到模块target。 这种方法是无操作的,如果source已经打开包至少target。- 参数
-
source- 源模块 -
pn- 包名称 -
target- 目标模块 - 结果
- 这个控制器
- 异常
-
IllegalArgumentException- 如果source不在模块层或包不在源模块中 - 另请参见:
-
Module.addOpens(java.lang.String, java.lang.Module)
-
-