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

列挙型クラスMethodHandles.Lookup.ClassOption

java.lang.Object
java.lang.Enum<MethodHandles.Lookup.ClassOption>
java.lang.invoke.MethodHandles.Lookup.ClassOption
すべての実装されたインタフェース:
Serializable, Comparable<MethodHandles.Lookup.ClassOption>, Constable
含まれているクラス:
MethodHandles.Lookup

public static enum MethodHandles.Lookup.ClassOption extends Enum<MethodHandles.Lookup.ClassOption>
Lookup::defineHiddenClassメソッドによって作成された非表示クラスをルックアップ・クラスのネストに新しいメンバーとして動的に追加するかどうか、または非表示クラスがその定義ローダーとしてマークされたクラス・ローダーと強力な関係を持つかどうか(あるいはその両方)を指定するクラス・オプションのセット。
導入されたバージョン:
15
  • 列挙型定数の詳細

    • NESTMATE

      public static final MethodHandles.Lookup.ClassOption NESTMATE
      ルックアップ・クラスの非表示クラスをネストとして「ネスト」に追加することを指定します。

      非表示のネストされたクラスは、同じネスト内のすべてのクラスおよびインタフェースのprivateメンバーにアクセスできます。

      関連項目:
      Class.getNestHost()
    • STRONG

      public static final MethodHandles.Lookup.ClassOption STRONG
      非表示のクラスが、その定義ローダーとしてマークされたクラス・ローダーとstrong関係を持つことを指定します。通常のクラスまたはインタフェースは、独自の定義ローダーを持ちます。 つまり、非表示のクラスがアンロードされるのは、その定義ローダーに到達できず、ガベージ・コレクタ(JLS 12.7)によって再利用される可能性がある場合のみです。

      デフォルトでは、非表示のクラスまたはインタフェースは、その定義ローダーとしてマークされているクラス・ローダーが「到達可能」であってもアンロードできます。

      Java言語仕様を参照してください:
      12.7 クラスおよびインタフェースのアンロード
  • メソッドの詳細

    • values

      public static MethodHandles.Lookup.ClassOption[] values()
      この列挙クラスの定数を含む配列を宣言されている順序で 返します。
      戻り値:
      この列挙クラスの定数を宣言されている順序で含む配列
    • valueOf

      public static MethodHandles.Lookup.ClassOption valueOf(String name)
      指定された名前を持つこのクラスのenum定数を返します。 文字列は、このクラスでenum定数を宣言するために使用される識別子とexactlyと一致する必要があります。 (不適切な空白文字は許可されません。)
      パラメータ:
      name - 返される列挙型定数の名前。
      戻り値:
      指定された名前を持つ列挙型定数
      例外:
      IllegalArgumentException - この列挙型クラスに指定された名前の定数がない場合
      NullPointerException - 引数がnullの場合