インタフェースTypeMirror
- すべてのスーパー・インタフェース:
AnnotatedConstruct
- 既知のすべてのサブインタフェース:
ArrayType,DeclaredType,ErrorType,ExecutableType,IntersectionType,NoType,NullType,PrimitiveType,ReferenceType,TypeVariable,UnionType,WildcardType
voidに対応する擬似型も表されます。
型の比較には、Typesのユーティリティ・メソッドを使用してく さい。 特定の型が常に同じオブジェクトにより表されるとはかぎりません。
TypeMirrorオブジェクトのクラスに基づいて操作を実装するには、visitorを使用するか、getKind()メソッドの結果を使用します。 instanceofを使用することが、このモデル階層内のオブジェクトの有効なクラスを決定するための信 できる方法であるとはかぎりません。実装によっては、単一のオブジェクトが複数のTypeMirrorサブインタフェースを実装するようにしている可能性があるためです。
- Java言語仕様を参照してく さい:
-
「4.1 タイプと値の種類」
「4.2 プリミティブ・タイプおよび値」
「4.3 参照タイプおよび値」
「4.4 型変数」
「4.5 パラメータ化タイプ」
「4.8 Rawタイプ」
「4.9 交差タイプ」
「10.1 配列タイプ」 - 導入されたバージョン:
- 1.6
- 関連 目:
-
メソッドのサマリー
修飾子と型メソッド説明<R,P> R accept(TypeVisitor<R, P> v, P p) この型にビジターを適用します。booleanObject.equalsの一般規約に従います。<A extends Annotation>
AgetAnnotation(Class<A> annotationType) 存在する 合は、この構 の指定された型の注釈を返し、そうでない 合はnullを返します。List<? extends AnnotationMirror> この構 に直接存在する注釈を返します。<A extends Annotation>
A[]getAnnotationsByType(Class<A> annotationType) 指定された型の注釈を返します。この構文は「関連」です。getKind()この型のkindを返します。inthashCode()Object.hashCodeの一般規約に従います。toString()この型の情 を提供する文字列表現を返します。
-
メソッドの詳細
-
getKind
TypeKind getKind()この型のkindを返します。- 「プリミティブ型」の種類は、
TypeKind.isPrimitive()がtrueを返す種類の1つです。 - 「nullタイプ」の種類は
NULLです。 - 「配列型」の種類は
ARRAYです。 - 「宣言型」の種類は
DECLAREDです。 - 「エラー型」の種類は
ERRORです。 - 「型変数」の種類は
TYPEVARです。 - 「ワイルドカード型」の種類は
WILDCARDです。 - 「実行可能型」の種類は
EXECUTABLEです。 - pseudo-typeの種類は、
VOID、PACKAGE、MODULEまたはNONEのいずれかです。 - 「共用体型」の種類は
UNIONです。 - 「交差タイプ」の種類は
INTERSECTIONです。
- 戻り値:
- このタイプの
kind
- 「プリミティブ型」の種類は、
-
equals
boolean equals(Object obj) Object.equalsの一般規約に従います。 た し、このメソッドは2つの型が同じ型を表すかどうかを示します。 型が等しいかどうかの意味上の比較には、Types.isSameType(TypeMirror, TypeMirror)を使用してく さい。t1.equals(t2)の結果とTypes.isSameType(t1, t2)の結果は異なることがあります。 -
hashCode
-
toString
-
getAnnotationMirrors
List<? extends AnnotationMirror> getAnnotationMirrors()この構 に直接存在する注釈を返します。このメソッドによって返される注釈はすべて型注釈であることに注意してく さい。
- 定義:
- インタフェース
AnnotatedConstructのgetAnnotationMirrors - 戻り値:
- このコンストラクトに直接存在する注釈。存在しない 合は空のリスト
- 導入されたバージョン:
- 1.8
-
getAnnotation
<A extends Annotation> A getAnnotation(Class<A> annotationType) 存在する 合は、この構 の指定された型の注釈を返し、そうでない 合はnullを返します。このメソッドが返す注釈には、
Class型の値を持つ要 が含まれる 合があります。 この値は直接返されません。つまり、クラス・ローダーを使用するための情 など、クラスを見つけてロードするのに必要な情 は利用できません。 返される注釈で関連するメソッドを呼び出すことによりClassオブジェクトを読み込もうとすると、MirroredTypeExceptionが発生します。これから、対応するTypeMirrorを抽出することができます。 同様に、Class[]の値を持つ要 を読み込もうとすると、MirroredTypesExceptionが発生します。ノート: このメソッドは、このインタフェースや関連するインタフェース内のほかのメソッドとは異なります。 実行時の反射情 に基づいて動作 - 現在VMにロードされている注釈インタフェースの表示 - これらのインタフェースで定義および使用される表現ではなく、。 その結果、返された注釈オブジェクトでメソッドを呼び出すと、コア・リフレクションによって返された注釈オブジェクトでメソッドを呼び出したときにスローされる可能性のある例外の多くがスローされることがあります。 このメソッドは、既知の固定された注釈インタフェース・セットで動作するように記述された呼び出し元を対象としています。
このメソッドによって返される注釈はすべて型注釈であることに注意してく さい。
- 定義:
- インタフェース
AnnotatedConstructのgetAnnotation - 型パラメータ:
A- 注釈インタフェース- パラメータ:
annotationType- 注釈インタフェースに対応するClassオブジェクト- 戻り値:
- このような注釈がpresentの 合は指定された型のこのコンストラクト注釈、それ以外の 合は
null - 導入されたバージョン:
- 1.8
- 関連 目:
-
getAnnotationsByType
<A extends Annotation> A[] getAnnotationsByType(Class<A> annotationType) 指定された型の注釈を返します。この構文は「関連」です。 このコンストラクトに関連付けられた指定された型の注釈がない 合、戻り値は長さ0の配列になります。 コンストラクトCに直接または間接的に存在している注釈の 序の計算では、Cに間接的に存在している注釈は、そのコンテナ注釈の 所に、コンテナ注釈の値要 内に現れる 序で、Cに直接存在しているかのように扱われます。 このメソッドとAnnotatedConstruct.getAnnotation(Class)の違いは、引数が「繰り返し可能な注釈インタフェース」かどうかをこのメソッドが検出し、その 合、"検索"がコンテナ注釈を使用してその型の注釈を検索しようとすることです。このメソッドから返される注釈には、
Class型の値を持つ要 が含まれている可能性があります。 この値は直接返されません。つまり、クラス・ローダーを使用するための情 など、クラスを見つけてロードするのに必要な情 は利用できません。 返される注釈で関連するメソッドを呼び出すことによりClassオブジェクトを読み込もうとすると、MirroredTypeExceptionが発生します。これから、対応するTypeMirrorを抽出することができます。 同様に、Class[]の値を持つ要 を読み込もうとすると、MirroredTypesExceptionが発生します。ノート: このメソッドは、このインタフェースや関連するインタフェース内のほかのメソッドとは異なります。 実行時の反射情 に基づいて動作 - 現在VMにロードされている注釈インタフェースの表示 - これらのインタフェースで定義および使用される表現ではなく、。 その結果、返された注釈オブジェクトでメソッドを呼び出すと、コア・リフレクションによって返された注釈オブジェクトでメソッドを呼び出したときにスローされる可能性のある例外の多くがスローされることがあります。 このメソッドは、既知の固定された注釈インタフェース・セットで動作するように記述された呼び出し元を対象としています。
このメソッドによって返される注釈はすべて型注釈であることに注意してく さい。
- 定義:
- インタフェース
AnnotatedConstruct内のgetAnnotationsByType - 型パラメータ:
A- 注釈インタフェース- パラメータ:
annotationType- 注釈インタフェースに対応するClassオブジェクト- 戻り値:
- 存在する 合は、このコンストラクトの指定された注釈型の注釈。そうでない 合は空の配列
- 導入されたバージョン:
- 1.8
- 関連 目:
-
accept
<R,P> R accept(TypeVisitor<R, P> v, P p) この型にビジターを適用します。- 型パラメータ:
R- ビジターのメソッドの戻り型P- ビジターのメソッドに対する追 パラメータのタイプ- パラメータ:
v- この型で動作するビジターp- ビジターに追 するパラメータ- 戻り値:
- ビジター指定の結果
-