Module java.base

Interface AnnotatedType

All Superinterfaces:
AnnotatedElement
All Known Subinterfaces:
AnnotatedArrayType, AnnotatedParameterizedType, AnnotatedTypeVariable, AnnotatedWildcardType

public interface AnnotatedType
extends AnnotatedElement
AnnotatedType represents the potentially annotated use of a type in the program currently running in this VM. The use may be of any type in the Java programming language, including an array type, a parameterized type, a type variable, or a wildcard type.
Since:
1.8
  • Method Details

    • getAnnotatedOwnerType

      default 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.

      Returns null if this AnnotatedType is an instance of AnnotatedArrayType, AnnotatedTypeVariable, or AnnotatedWildcardType.

      Implementation Requirements:
      This default implementation returns null and performs no other action.
      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
    • getType

      Type getType()
      Returns the underlying type that this annotated type represents.
      Returns:
      the type this annotated type represents