インタフェースEnclosingMethodAttribute
- すべてのスーパー・インタフェース:
Attribute<EnclosingMethodAttribute>
,ClassElement
,ClassFileElement
public sealed interface EnclosingMethodAttribute extends Attribute<EnclosingMethodAttribute>, ClassElement
EnclosingMethod
属性(JVMS 4.7.7)をモデル化します。これは、このクラスがローカル・クラスまたは匿名クラスであることを示し、このクラスが1つのメソッドまたはコンストラクタで囲まれている場合は、このクラスの包含メソッドまたはコンストラクタを示します。
この属性はクラスにのみ表示され、クラス内の「複数のインスタンス」は許可されません。 「定数プール」へのデータ依存性があります。
属性は、Java SEプラットフォーム・バージョン5.0(メジャー・バージョン49)で導入されました。
- Java Virtual Machine仕様を参照してください:
-
「4.7.7
EnclosingMethod
属性」 - 導入されたバージョン:
- 24
- 関連項目:
-
メソッドのサマリー
修飾子と型メソッド説明現在のクラスの宣言を囲むクラスを返します。クラスがただちに1つのメソッドまたはコンストラクタで囲まれている場合、包含メソッドの名前および型を返します。クラスがただちに1つのメソッドまたはコンストラクタで囲まれている場合、包含メソッドの名前を返します。クラスがただちに1つのメソッドまたはコンストラクタで囲まれている場合、包含メソッドの名前を返します。default Optional
<MethodTypeDesc> クラスがただちに1つのメソッドまたはコンストラクタで囲まれている場合、包含メソッドの名前を返します。static EnclosingMethodAttribute
of
(ClassEntry className, Optional<NameAndTypeEntry> method) EnclosingMethod
属性を返します。static EnclosingMethodAttribute
EnclosingMethod
属性を返します。インタフェースjava.lang.classfile.Attributeで宣言されたメソッド
attributeMapper, attributeName
-
メソッドの詳細
-
enclosingClass
ClassEntry enclosingClass()現在のクラスの宣言を囲むクラスを返します。enclosingMethod()
が存在する場合、これはその包含メソッドまたはコンストラクタの宣言クラスです。- 戻り値:
- 現在のクラスの宣言を囲むクラス
- 関連項目:
-
enclosingMethod
Optional<NameAndTypeEntry> enclosingMethod()クラスがただちに1つのメソッドまたはコンストラクタで囲まれている場合、包含メソッドの名前および型を返します。 匿名クラスまたはローカル・クラスがフィールド・イニシャライザ(JLS 8.3.2)、インスタンス・イニシャライザ(JLS 8.6)または静的イニシャライザ(JLS 8.7)にある場合、これは空である可能性があります。 その結果、クラス初期化メソッド"<clinit>"は記述されません。- 戻り値:
- クラスが1つのメソッドまたはコンストラクタによってすぐに囲まれている場合、包含メソッドの名前および型
- 関連項目:
-
enclosingMethodName
-
enclosingMethodType
-
enclosingMethodTypeSymbol
default Optional<MethodTypeDesc> enclosingMethodTypeSymbol()クラスがただちに1つのメソッドまたはコンストラクタで囲まれている場合、包含メソッドの名前を返します。- 戻り値:
- クラスが1つのメソッドまたはコンストラクタによってすぐに囲まれている場合、包含メソッドの名前
- 関連項目:
-
of
static EnclosingMethodAttribute of(ClassEntry className, Optional<NameAndTypeEntry> method) EnclosingMethod
属性を返します。- パラメータ:
className
- クラス名method
- 囲んでいるメソッドの名前と型、またはクラスが1つのメソッドまたはコンストラクタによってすぐに囲まれていない場合はOptional.empty()
- 戻り値:
EnclosingMethod
属性
-
of
static EnclosingMethodAttribute of(ClassDesc className, Optional<String> methodName, Optional<MethodTypeDesc> methodType) EnclosingMethod
属性を返します。- パラメータ:
className
- クラス名methodName
- クラスが1つのメソッドまたはコンストラクタによってすぐに囲まれていない場合は、包含メソッドの名前またはOptional.empty()
methodType
- 包含メソッドの型、またはクラスが1つのメソッドまたはコンストラクタによってすぐに囲まれていない場合はOptional.empty()
- 戻り値:
EnclosingMethod
属性- スロー:
IllegalArgumentException
-className
がプリミティブ型を表す場合
-