モジュール java.base
パッケージ java.lang

クラスModuleLayer.Controller

  • 含まれているクラス:
    ModuleLayer


    public static final class ModuleLayer.Controller
    extends Object
    モジュール・レイヤーを制御します。 モジュール・レイヤーを作成するためにModuleLayerによって定義された静的メソッドは、レイヤー内のモジュールを制御するために使用できるControllerを返します。

    特に指定しない限り、null引数をこのクラスのメソッドに渡すと、NullPointerExceptionがスローされます。

    APIの注:
    Controllerオブジェクトには注意が必要です。信頼できないコードとは共有しないでください。
    導入されたバージョン:
    9
    • メソッドの詳細

      • 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)