Interface TypeVariable

All Superinterfaces:
AnnotatedConstruct, ReferenceType, TypeMirror
public interface TypeVariable extends ReferenceType
Represents a type variable. A type variable may be explicitly declared by a type parameter of a type, method, or constructor. A type variable may also be declared implicitly, as by the capture conversion of a wildcard type argument (see chapter 5 of The Java Language Specification).
See Java Language Specification:
4.4 Type Variables
Since:
1.6
See Also:

Method Summary

Modifier and Type Method Description
Element asElement()
Returns the element corresponding to this type variable.
TypeMirror getLowerBound()
Returns the lower bound of this type variable.
TypeMirror getUpperBound()
Returns the upper bound of this type variable.

Methods declared in interface javax.lang.model.type.TypeMirror

accept, equals, getAnnotation, getAnnotationMirrors, getAnnotationsByType, getKind, hashCode, toString

Method Details

asElement

Element asElement()
Returns the element corresponding to this type variable.
Returns:
the element corresponding to this type variable

getUpperBound

TypeMirror getUpperBound()
Returns the upper bound of this type variable.

If this type variable was declared with no explicit upper bounds, the result is java.lang.Object. If it was declared with multiple upper bounds, the result is an intersection type; individual bounds can be found by examining the result's bounds.

Returns:
the upper bound of this type variable
See Java Language Specification:
4.9 Intersection Types

getLowerBound

TypeMirror getLowerBound()
Returns the lower bound of this type variable. While a type parameter cannot include an explicit lower bound declaration, capture conversion can produce a type variable with a non-trivial lower bound. Type variables otherwise have a lower bound of NullType.
Returns:
the lower bound of this type variable
See Java Language Specification:
18.1.3. Bounds

© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.compiler/javax/lang/model/type/TypeVariable.html