インタフェースTypeVariable<D extends GenericDeclaration>
- 型パラメータ:
D- 基礎となる型変数を宣言した汎用宣言のタイプ。
- すべてのスーパー・インタフェース:
AnnotatedElement,Type
public interface TypeVariable<D extends GenericDeclaration> extends Type, AnnotatedElement
TypeVariableは、型変数の種類の共通のスーパー・インタフェースです。 型変数は、このパッケージで指定されているように、リフレクト・メソッドにより必要とされるときにはじめて作成されます。 タイプ変数tがタイプ(i.e、クラス、インタフェースまたは注釈タイプ) Tで参照され、TがT (JLS 8.1.2を参照) のnthの包含クラスによって宣言されている 合、tの作成には、i = 0からnまでのith包含クラスの解決(JVMS 5を参照) が必要です。 型変数の作成で、その境界の作成が発生してはいけません。 型変数の作成を繰り返してもなんら効果はありません。
実行時に複数のオブジェクトをインスタンス化し、指定された型変数を表すことができます。 型変数が一度 け作成された 合でも、型変数を表すインスタンスをキャッシュする要求を意味しているわけではありません。 た し、型変数を表すすべてのインスタンスは相互に同等(equal())である必要があります。 したがって、型変数のユーザーはこのインタフェースを実装しているクラスのインスタンスのアイデンティティに依存してはいけません。
- Java言語仕様を参照してく さい:
-
4.4 型変数
- 導入されたバージョン:
- 1.5
-
メソッドのサマリー
インタフェースjava.lang.reflect.AnnotatedElementで宣言されたメソッド
getAnnotation, getAnnotations, getAnnotationsByType, getDeclaredAnnotation, getDeclaredAnnotations, getDeclaredAnnotationsByType, isAnnotationPresentインタフェースjava.lang.reflect.Typeで宣言されたメソッド
getTypeName
-
メソッドの詳細
-
getBounds
Type[] getBounds()この型変数の上限を表すTypeオブジェクトの配列を返します。 上限が明示的に宣言されていない 合、上限はObjectです。各上限Bについて、
- Bがパラメータ化された型または型変数の 合、Bは作成されます(パラメータ化された型の作成処理の詳細については、
ParameterizedTypeを参照)。 - そうでない 合、Bは解決されます。
- 戻り値:
- この型変数の上限を表す
Typeの配列 - スロー:
TypeNotPresentException- 境界のいずれかが、存在しない型宣言を参照する 合MalformedParameterizedTypeException- 境界のいずれかが、なんらかの理由によりインスタンス化できないパラメータ化された型を参照する 合
- Bがパラメータ化された型または型変数の 合、Bは作成されます(パラメータ化された型の作成処理の詳細については、
-
getGenericDeclaration
D getGenericDeclaration()この型変数に宣言された汎用宣言を表すGenericDeclarationオブジェクトを返します。- 戻り値:
- この型変数を宣言したジェネリック宣言
- 導入されたバージョン:
- 1.5
-
getName
-
getAnnotatedBounds
AnnotatedType[] getAnnotatedBounds()TypeVariableによって表される型パラメータの上限を示す型の使用を表すAnnotatedTypeオブジェクトの配列を返します。 配列内のオブジェクトの 序は、型パラメータの宣言における境界の 序に一致します。 上限が明示的に宣言されていない 合、上限は注釈なしのObjectになります。- 戻り値:
- 型変数のupperbound(s)を表すオブジェクトの配列
- 導入されたバージョン:
- 1.8
-