# Interface Parameterizable

All Superinterfaces:
  `AnnotatedConstruct, Element`

All Known Subinterfaces:
  `ExecutableElement, TypeElement`

public interface Parameterizable extends Element
A mixin interface for an element that has type parameters.

See Java Language Specification:
  4.5 Parameterized Types
  8.4.4 Generic Methods
  8.8.4 Generic Constructors
Since:
  1.7

## Method Summary

Modifier and Type
Method
Description
`List<? extends TypeParameterElement>`
`getTypeParameters()`
Returns the formal type parameters of an element in declaration order.

### Methods declared in interface Element

`accept, asType, equals, getAnnotation, getAnnotationMirrors, getAnnotationsByType, getEnclosedElements, getEnclosingElement, getKind, getModifiers, getSimpleName, hashCode`
Modifier and Type
Method
Description
`<R,P> R`
`accept(ElementVisitor<R,P> v, P p)`
Applies a visitor to this element.
`TypeMirror`
`asType()`
Returns the type defined by this element.
`boolean`
`equals(Object obj)`
Returns `true` if the argument represents the same element as `this`, or `false` otherwise.
`<A extends Annotation>
A`
`getAnnotation(Class<A> annotationType)`
Returns this construct's annotation of the specified type if such an annotation is present, else `null`.
`List<? extends AnnotationMirror>`
`getAnnotationMirrors()`
Returns the annotations that are directly present on this construct.
`<A extends Annotation>
A[]`
`getAnnotationsByType(Class<A> annotationType)`
Returns annotations of the specified type that are associated with this construct.
`List<? extends Element>`
`getEnclosedElements()`
Returns the elements that are, loosely speaking, directly enclosed by this element.
`Element`
`getEnclosingElement()`
Returns the innermost element within which this element is, loosely speaking, enclosed.
`ElementKind`
`getKind()`
Returns the `kind` of this element.
`Set<Modifier>`
`getModifiers()`
Returns the modifiers of this element, excluding annotations.
`Name`
`getSimpleName()`
Returns the simple (unqualified) name of this element.
`int`
`hashCode()`
Obeys the general contract of `Object.hashCode`.

## Method Details

### getTypeParameters

List<? extends TypeParameterElement> getTypeParameters()
Returns the formal type parameters of an element in declaration order.

Returns:
  the formal type parameters, or an empty list if there are none