public interface TypeVariable<T extends GenericDeclaration> extends Type
This is a common interface for all type variables provided by the Java language. Instances are created the first time a type variable is needed by one of the reflective methods declared in this package.
Creating a type variable requires resolving the appropriate type.
This may involve resolving other classes as a side effect (e.g.
if the type is nested inside other classes). Creation should not
involve resolving the bounds. Repeated creation has no effect; an
equivalent instance is returned. Caching is not required, but all
instances must be equal() to each other.
| Modifier and Type | Method and Description |
|---|---|
Type[] |
getBounds()
Returns an array of
Type objects which represent the upper
bounds of this type variable. |
T |
getGenericDeclaration()
Returns a representation of the declaration used to declare this
type variable.
|
String |
getName()
Returns the name of the type variable, as written in the source
code.
|
Type[] getBounds()
Type objects which represent the upper
bounds of this type variable. There is always a default bound of
Object. Any ParameterizedTypes will be
created as necessary, and other types resolved.Type objects representing the upper
bounds.TypeNotPresentException - if any of the bounds refer to a
non-existant type.MalformedParameterizedTypeException - if the creation of a
ParameterizedType fails.T getGenericDeclaration()
GenericDeclaration object for this type
variable.