- 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.Controller
addExports(Module source, String pn, Module target)
更新模块source
在图层中导出包到模块target
。ModuleLayer.Controller
addOpens(Module source, String pn, Module target)
更新模块source
在图层中打开一个包到模块target
。ModuleLayer.Controller
addReads(Module source, Module target)
更新模块source
在图层中读取模块target
。ModuleLayer
layer()
返回此对象控制的图层。
-
-
-
方法详细信息
-
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)
-
-