Interface WildcardType
- All Superinterfaces:
Type
WildcardType represents a wildcard type expression, such as
?
, ? extends Number
, or ? super Integer
.- See Java Language Specification:
-
4.5.1 Type Arguments of Parameterized Types
- Since:
- 1.5
-
Method Summary
Methods declared in interface java.lang.reflect.Type
getTypeName
-
Method Details
-
getUpperBounds
Type[] getUpperBounds()Returns an array ofType
objects representing the upper bound(s) of this type variable. If no upper bound is explicitly declared, the upper bound isObject
.For each upper bound B :
- if B is a parameterized type or a type variable, it is created,
(see
ParameterizedType
for the details of the creation process for parameterized types). - Otherwise, B is resolved.
- API Note:
- While to date a wildcard may have at most one upper bound, callers of this method should be written to accommodate multiple bounds.
- Returns:
- an array of Types representing the upper bound(s) of this type variable
- Throws:
TypeNotPresentException
- if any of the bounds refers to a non-existent type declarationMalformedParameterizedTypeException
- if any of the bounds refer to a parameterized type that cannot be instantiated for any reason
- if B is a parameterized type or a type variable, it is created,
(see
-
getLowerBounds
Type[] getLowerBounds()Returns an array ofType
objects representing the lower bound(s) of this type variable. If no lower bound is explicitly declared, the lower bound is the type ofnull
. In this case, a zero length array is returned.For each lower bound B :
- if B is a parameterized type or a type variable, it is created,
(see
ParameterizedType
for the details of the creation process for parameterized types). - Otherwise, B is resolved.
- API Note:
- While to date a wildcard may have at most one lower bound, callers of this method should be written to accommodate multiple bounds.
- Returns:
- an array of Types representing the lower bound(s) of this type variable
- Throws:
TypeNotPresentException
- if any of the bounds refers to a non-existent type declarationMalformedParameterizedTypeException
- if any of the bounds refer to a parameterized type that cannot be instantiated for any reason
- if B is a parameterized type or a type variable, it is created,
(see
-