java.lang.Object
java.lang.ModuleLayer.Controller
- 含まれているクラス:
- ModuleLayer
public static final class ModuleLayer.Controller extends Object
モジュール・レイヤーを制御します。 モジュール・レイヤーを作成するために
ModuleLayerによって定義された静的メソッドは、レイヤー内のモジュールを制御するために使用できるControllerを返します。
特に指定しない限り、null引数をこのクラスのメソッドに渡すと、NullPointerExceptionがスローされます。
- APIのノート:
Controllerオブジェクトには注意が必要です。信頼できないコードとは共有しないでください。- 導入されたバージョン:
- 9
-
メソッドのサマリー
修飾子と型 メソッド 説明 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を読み込んでいる場合、このメソッドはno-opです。- 実装上のノート:
- このメソッドで追加された「エッジを読み取る」はweakであり、
sourceが強く到達可能な場合にtargetがGCされてしまうことを防止しません。 - パラメータ:
source- ソース・モジュールtarget- 読み取るターゲット・モジュール- 戻り値:
- このコントローラ
- 例外:
IllegalArgumentException-sourceがモジュール・レイヤーにない場合- 関連項目:
Module.addReads(java.lang.Module)
-
addExports
public ModuleLayer.Controller addExports(Module source, String pn, Module target)レイヤーのモジュールsourceを更新して、パッケージをモジュールtargetにエクスポートします。sourceが既にパッケージを少なくともtargetにエクスポートする場合、このメソッドはno-opです。- パラメータ:
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までパッケージを開いている場合、このメソッドはno-opです。- パラメータ:
source- ソース・モジュールpn- パッケージ名target- ターゲット・モジュール- 戻り値:
- このコントローラ
- 例外:
IllegalArgumentException-sourceがモジュール層にないか、パッケージがソース・モジュールにない場合- 関連項目:
Module.addOpens(java.lang.String, java.lang.Module)
-