public interface TypeVariable
implements Type
java.lang.reflect.TypeVariable<D extends java.lang.reflect.GenericDeclaration> |
TypeVariable是类型变量的常用超接口。 在这个包中指定的反射方法第一次需要时创建一个类型变量。 如果类型变量t由类型(即类,接口或注释类型)T引用,并且T由T的第n个封闭类声明(请参阅JLS 8.1.2),则创建t需要解析参见JVMS 5)第i个包含T的类,对于i = 0到n(包括)。 创建一个类型变量不能导致其边界的创建。 重复创建类型变量不起作用。
运行时可以实例化多个对象来表示给定的类型变量。 尽管只创建一次类型变量,但这并不意味着需要缓存表示类型变量的实例。 但是,表示类型变量的所有实例必须相等()。 因此,类型变量的用户不能依赖实现此接口的类的实例的身份。
Public methods |
|
---|---|
abstract Type[] |
getBounds() 返回表示此类型变量上限的 |
abstract D |
getGenericDeclaration() 返回表示声明此类型变量的泛型声明的 |
abstract String |
getName() 返回此类型变量的名称,因为它发生在源代码中。 |
Type[] getBounds ()
返回表示此类型变量上限的Type
对象的数组。 请注意,如果没有明确声明上限,则上限为Object
。
对于每个上限B:
ParameterizedType
for the details of the creation process for parameterized types). Returns | |
---|---|
Type[] |
an array of Type s representing the upper bound(s) of this type variable |
Throws | |
---|---|
TypeNotPresentException |
if any of the bounds refers to a non-existent type declaration |
MalformedParameterizedTypeException |
if any of the bounds refer to a parameterized type that cannot be instantiated for any reason |
D getGenericDeclaration ()
返回表示声明此类型变量的泛型声明的 GenericDeclaration
对象。
Returns | |
---|---|
D |
the generic declaration declared for this type variable. |
String getName ()
返回此类型变量的名称,因为它发生在源代码中。
Returns | |
---|---|
String |
the name of this type variable, as it appears in the source code |