|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface TypeVariable<D extends GenericDeclaration>
TypeVariable is the common superinterface for type variables of kinds. A type variable is created the first time it is needed by a reflective method, as specified in this package. If a type variable t is referenced by a type (i.e, class, interface or annotation type) T, and T is declared by the nth enclosing class of T (see JLS 8.1.2), then the creation of t requires the resolution (see JVMS 5) of the ith enclosing class of T, for i = 0 to n, inclusive. Creating a type variable must not cause the creation of its bounds. Repeated creation of a type variable has no effect.
Multiple objects may be instantiated at run-time to represent a given type variable. Even though a type variable is created only once, this does not imply any requirement to cache instances representing the type variable. However, all instances representing a type variable must be equal() to each other. As a consequence, users of type variables must not rely on the identity of instances of classes implementing this interface.
The type parameter D represents the type of generic declaration that declared the underlying type variable.
Method Summary | |
---|---|
Type[] |
getBounds()
Returns an array of Type objects representing the upper bound(s) of this type variable. |
D |
getGenericDeclaration()
Returns the GenericDeclaration object representing the generic declaration declared this type variable. |
String |
getName()
Returns the name of this type variable, as it occurs in the source code. |
Method Detail |
---|
Type[] getBounds()
For each upper bound B:
ParameterizedType
for the
details of the creation process for parameterized types).
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 reasonD getGenericDeclaration()
String getName()
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.