AnnotatedParameterizedType (Java SE 14 & JDK 14)
Description: declaration: module: java.base, package: java.lang.reflect, interface: AnnotatedParameterizedType
Keywords: java.lang.reflect.AnnotatedParameterizedType interface

Module java.base
Package java.lang.reflect

# Interface AnnotatedParameterizedType

All Superinterfaces:
  `AnnotatedElement`, `AnnotatedType`

    public interface AnnotatedParameterizedType
    extends AnnotatedType

`AnnotatedParameterizedType` represents the potentially annotated use of a parameterized type, whose type arguments may themselves represent annotated uses of types.

Since:
  1.8

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `AnnotatedType[]` | `getAnnotatedActualTypeArguments()` | Returns the potentially annotated actual type arguments of this parameterized type.
  `AnnotatedType` | `getAnnotatedOwnerType()` | Returns the potentially annotated type that this type is a member of, if this type represents a nested type.

  ### Methods declared in interface java.lang.reflect.AnnotatedElement

  `getAnnotation, getAnnotations, getAnnotationsByType, getDeclaredAnnotation, getDeclaredAnnotations, getDeclaredAnnotationsByType, isAnnotationPresent`

  ### Methods declared in interface java.lang.reflect.AnnotatedType

  `getType`

- ## Method Details

  - ### getAnnotatedActualTypeArguments

    AnnotatedType[] getAnnotatedActualTypeArguments()
    Returns the potentially annotated actual type arguments of this parameterized type.
    Returns:
      the potentially annotated actual type arguments of this parameterized type
    See Also:
      `ParameterizedType.getActualTypeArguments()`

  - ### getAnnotatedOwnerType

    AnnotatedType getAnnotatedOwnerType()
    Returns the potentially annotated type that this type is a member of, if this type represents a nested type. For example, if this type is `@TA O<T>.I<S>`, return a representation of `@TA O<T>`.

    Returns `null` if this `AnnotatedType` represents a top-level type, or a local or anonymous class, or a primitive type, or void.

    Specified by:
      `getAnnotatedOwnerType` in interface `AnnotatedType`
    Returns:
      an `AnnotatedType` object representing the potentially annotated type that this type is a member of, or `null`
    Throws:
      `TypeNotPresentException` - if the owner type refers to a non-existent type declaration
      `MalformedParameterizedTypeException` - if the owner type refers to a parameterized type that cannot be instantiated for any reason
    Since:
      9