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
    --- | --- | ---
    `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, asType, equals, getAnnotation, getAnnotationMirrors, getEnclosedElements, getKind, getModifiers, getSimpleName, hashCode`

- - ### Method Detail

    - #### 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)`