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

クラスModuleLayer.Controller

java.lang.Object
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)