-
- すべてのスーパー・インタフェース:
AnnotatedConstruct
- 既知のすべてのサブインタフェース:
ExecutableElement
,ModuleElement
,PackageElement
,Parameterizable
,QualifiedNameable
,TypeElement
,TypeParameterElement
,VariableElement
public interface Element extends AnnotatedConstruct
モジュール、パッケージ、クラス、メソッドなどのプログラム要素を表します。 各要素は、仮想マシンの実行時の構成要素などではなく、静的な言語レベルの構成要素を表します。要素を比較するには、
equals(Object)
メソッドを使用してください。 特定の要素が常に同じオブジェクトにより表されるとはかぎりません。Element
オブジェクトのクラスに基づいて操作を実装するには、visitorを使用するか、getKind()
メソッドの結果を使用します。instanceof
を使用することが、このモデル階層内のオブジェクトの有効なクラスを決定するための信頼できる方法であるとはかぎりません。実装によっては、単一のオブジェクトが複数のElement
サブインタフェースを実装するようにしている可能性があるためです。- 導入されたバージョン:
- 1.6
- 関連項目:
Elements
,TypeMirror
-
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 抽象メソッド 修飾子と型 メソッド 説明 <R,P> R
accept(ElementVisitor<R,P> v, P p)
この要素にビジターを適用します。TypeMirror
asType()
この要素で定義された型を返します。boolean
equals(Object obj)
引数がthis
と同じ要素を表す場合はtrue
、それ以外の場合はfalse
を返します。<A extends Annotation>
AgetAnnotation(Class<A> annotationType)
存在する場合は、このコンストラクトの指定された型の注釈を返し、そうでない場合はnull
を返します。List<? extends AnnotationMirror>
getAnnotationMirrors()
このコンストラクトに直接存在する注釈を返します。List<? extends Element>
getEnclosedElements()
大まかに言うとこの要素によって直接囲まれている要素を返します。Element
getEnclosingElement()
大まかに言うとこの要素を囲んでいる、もっとも内側の要素を返します。ElementKind
getKind()
この要素のkind
を返します。Set<Modifier>
getModifiers()
注釈を除く、この要素の修飾子を返します。Name
getSimpleName()
この要素の単純(非修飾)名を返します。int
hashCode()
Object.hashCode
の一般規約に従います。-
インタフェース javax.lang.model.AnnotatedConstructで宣言されたメソッド
getAnnotationsByType
-
-
-
-
メソッドの詳細
-
asType
TypeMirror asType()
この要素で定義された型を返します。ジェネリック要素は型を1つだけではなく、ファミリで定義します。 これがジェネリック要素であれば、プロトタイプ的型が返されます。 これは、独自の仮型パラメータに対応する型変数での要素の呼出しです。 たとえば、ジェネリック・クラス要素である
C<N extends Number>
については、パラメータ化された型C<N>
が返されます。Types
ユーティリティ・インタフェースには、要素で定義された型の全範囲を取得するための汎用的なメソッドがより多く用意されています。- 戻り値:
- この要素で定義された型
- 関連項目:
Types
-
getKind
ElementKind getKind()
この要素のkind
を返します。- 戻り値:
- この要素の種類
-
getModifiers
Set<Modifier> getModifiers()
注釈を除く、この要素の修飾子を返します。 インタフェースのメンバーのpublic
修飾子とstatic
修飾子などの暗黙的な修飾子を含みます。- 戻り値:
- この要素の修飾子。存在しない場合は空のセット
-
getSimpleName
Name getSimpleName()
-
getEnclosingElement
Element getEnclosingElement()
大まかに言うとこの要素を囲んでいる、もっとも内側の要素を返します。- 戻り値:
- 囲んでいる要素。存在しない場合は
null
- 関連項目:
Elements.getPackageOf(javax.lang.model.element.Element)
-
getEnclosedElements
List<? extends Element> getEnclosedElements()
大まかに言うとこの要素によって直接囲まれている要素を返します。 クラスまたはインタフェースは、直接宣言するフィールド、メソッド、コンストラクタ、およびメンバーの型を囲むとみなされます。 パッケージは、トップ・レベルのクラスとインタフェースを囲みますが、サブパッケージを囲むとはみなされません。 moduleはその中のパッケージを囲みます。 囲まれた要素には、暗黙的に宣言されたmandated要素が含まれます。 その他の種類の要素は、現在のところ要素を囲むことはないとみなされていますが、このAPIやプログラミング言語が拡張されると、そうでなくなる可能性もあります。- APIの注:
- 特定の種類の要素は、
ElementFilter
のメソッドを使用して分離できます。 - 戻り値:
- 囲まれている要素。存在しない場合は空のリスト
- 関連項目:
TypeElement.getEnclosedElements()
,PackageElement.getEnclosedElements()
,ModuleElement.getEnclosedElements()
,Elements.getAllMembers(javax.lang.model.element.TypeElement)
- Java™言語仕様:
- 8.8.9 デフォルトのコンストラクタ、8.9 列挙型
-
equals
boolean equals(Object obj)
引数がthis
と同じ要素を表す場合はtrue
、それ以外の場合はfalse
を返します。- オーバーライド:
equals
、クラス:Object
- APIの注:
- 要素のアイデンティティには、要素メソッドから直接アクセスできない暗黙の状態が含まれます。これには、無関係な型の存在に関する状態も含まれます。 これらのインタフェースの異なる実装で作成された要素オブジェクトは、同じ要素がモデル化されていたとしても、同じ動作をするとは想定しないでください。これは、異なるクラス・ローダーを介してロードされた同一のクラス・ファイルで
Class
オブジェクトが同じにはならないことと同様です。 - パラメータ:
obj
- この要素と比較されるオブジェクト- 戻り値:
- 指定されたオブジェクトがthisと同じ要素を表す場合は
true
- 関連項目:
Object.hashCode()
、HashMap
-
hashCode
int hashCode()
Object.hashCode
の一般規約に従います。- オーバーライド:
hashCode
、クラス:Object
- 戻り値:
- このオブジェクトのハッシュ・コード値。
- 関連項目:
equals(java.lang.Object)
-
getAnnotationMirrors
List<? extends AnnotationMirror> getAnnotationMirrors()
このコンストラクトに直接存在する注釈を返します。継承された注釈を取得するには、
getAllAnnotationMirrors
を使用します。- 定義:
- インタフェース
AnnotatedConstruct
のgetAnnotationMirrors
- 戻り値:
- このコンストラクトに直接存在する注釈。存在しない場合は空のリスト
- 導入されたバージョン:
- 1.6
-
getAnnotation
<A extends Annotation> A getAnnotation(Class<A> annotationType)
存在する場合は、このコンストラクトの指定された型の注釈を返し、そうでない場合はnull
を返します。このメソッドが返す注釈には、
Class
型の値を持つ要素が含まれる場合があります。 この値は直接返されません。つまり、クラス・ローダーを使用するための情報など、クラスを見つけてロードするのに必要な情報は利用できません。 返される注釈で関連するメソッドを呼び出すことによりClass
オブジェクトを読み込もうとすると、MirroredTypeException
が発生します。これから、対応するTypeMirror
を抽出することができます。 同様に、Class[]
の値を持つ要素を読み込もうとすると、MirroredTypesException
が発生します。注: このメソッドは、このインタフェースや関連するインタフェース内のほかのメソッドとは異なります。 このメソッドは、これらのインタフェースにより定義され、これらのインタフェースを通じて使用される表現に対して操作を行うのではなく、実行時リフレクト情報(仮想マシンに現在ロードされている注釈型の表現)に対して操作を行います。 その結果、返された注釈オブジェクトでメソッドを呼び出すと、コア・リフレクションによって返された注釈オブジェクトでメソッドを呼び出したときにスローされる可能性のある例外の多くがスローされることがあります。 このメソッドは、注釈型の既知の固定セットに対して操作を行うように記述された呼出し側を対象としています。
- 定義:
- インタフェース
AnnotatedConstruct
のgetAnnotation
- 型パラメータ:
A
- 注釈型- パラメータ:
annotationType
- 注釈型に対応するClass
オブジェクト- 戻り値:
- 存在する場合は、このコンストラクトの指定された注釈型の注釈。そうでない場合は
null
- 導入されたバージョン:
- 1.6
- 関連項目:
AnnotatedConstruct.getAnnotationMirrors()
,AnnotatedElement.getAnnotation(java.lang.Class<T>)
,EnumConstantNotPresentException
,AnnotationTypeMismatchException
,IncompleteAnnotationException
,MirroredTypeException
,MirroredTypesException
-
accept
<R,P> R accept(ElementVisitor<R,P> v, P p)
この要素にビジターを適用します。- 型パラメータ:
R
- ビジターのメソッドの戻り型P
- ビジターのメソッドに追加するパラメータの型- パラメータ:
v
- この要素で動作するビジターp
- ビジターに追加するパラメータ- 戻り値:
- ビジター指定の結果
-
-