TypeParameterElement (Java SE 14 & JDK 14)
Description: declaration: module: java.compiler, package: javax.lang.model.element, interface: TypeParameterElement
Keywords: javax.lang.model.element.TypeParameterElement interface

Module java.compiler
Package javax.lang.model.element

# Interface TypeParameterElement

All Superinterfaces:
  `AnnotatedConstruct`, `Element`

    public interface TypeParameterElement
    extends Element

Represents a formal type parameter of a generic class, interface, method, or constructor element. A type parameter declares a `TypeVariable`.

Since:
  1.6
See Also:
  `TypeVariable`

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `TypeMirror` | `asType()` | Returns the type variable corresponding to this type parameter element.
  `List<? extends TypeMirror>` | `getBounds()` | Returns the bounds of this type parameter.
  `Element` | `getEnclosingElement()` | Returns the generic element of this type parameter.
  `Element` | `getGenericElement()` | Returns the generic class, interface, method, or constructor that is parameterized by this type parameter.

  ### Methods declared in interface javax.lang.model.AnnotatedConstruct

  `getAnnotationsByType`

  ### Methods declared in interface javax.lang.model.element.Element

  `accept, equals, getAnnotation, getAnnotationMirrors, getEnclosedElements, getKind, getModifiers, getSimpleName, hashCode`

- ## Method Details

  - ### asType

    TypeMirror asType()
    Returns the type variable corresponding to this type parameter element.
    Specified by:
      `asType` in interface `Element`
    Returns:
      the type variable corresponding to this type parameter element
    See Also:
      `TypeVariable`

  - ### getGenericElement

    Element getGenericElement()
    Returns the generic class, interface, method, or constructor that is parameterized by this type parameter.
    Returns:
      the generic class, interface, method, or constructor that is parameterized by this type parameter

  - ### getBounds

    List<? extends TypeMirror> getBounds()
    Returns the bounds of this type parameter. These are the types given by the `extends` clause used to declare this type parameter. If no explicit `extends` clause was used, then `java.lang.Object` is considered to be the sole bound.
    Returns:
      the bounds of this type parameter, or an empty list if there are none

  - ### getEnclosingElement

    Element getEnclosingElement()
    Returns the generic element of this type parameter.
    Specified by:
      `getEnclosingElement` in interface `Element`
    Returns:
      the generic element of this type parameter
    See Also:
      `Elements.getPackageOf(javax.lang.model.element.Element)`