Module java.base

Interface AnnotatedType

所有超接口:
AnnotatedElement
所有已知子接口:
AnnotatedArrayType, AnnotatedParameterizedType, AnnotatedTypeVariable, AnnotatedWildcardType

public interface AnnotatedType extends AnnotatedElement
AnnotatedType 表示程序中当前运行的类型的潜在注释使用。该使用可以是Java编程语言中的任何类型,包括数组类型、参数化类型、类型变量或通配符类型。请注意,此接口上的方法返回的任何注释都是类型注释(JLS 9.7.4),因为潜在注释的实体是一个类型。
参见 Java语言规范:
4.1 类型和值的种类
4.2 基本类型和值
4.3 引用类型和值
4.4 类型变量
4.5 参数化类型
4.8 原始类型
4.9 交叉类型
10.1 数组类型
自版本:
1.8
  • Method Details

    • getAnnotatedOwnerType

      default AnnotatedType getAnnotatedOwnerType()
      返回此类型是其成员的潜在注释类型,如果此类型表示嵌套类型。例如,如果此类型是@TA O<T>.I<S>,则返回@TA O<T> 的表示。

      如果此AnnotatedType 表示顶级类或接口,或局部类或匿名类,或原始类型,或void,则返回null

      如果此AnnotatedTypeAnnotatedArrayTypeAnnotatedTypeVariableAnnotatedWildcardType 的实例,则返回null

      实现要求:
      此默认实现返回null,不执行其他操作。
      返回:
      表示此类型是其成员的潜在注释类型的AnnotatedType 对象,或null
      抛出:
      TypeNotPresentException - 如果所有者类型引用不存在的类或接口声明
      MalformedParameterizedTypeException - 如果所有者类型引用无法由于任何原因实例化的参数化类型
      自版本:
      9
    • getType

      Type getType()
      返回此注释类型表示的基础类型。
      返回:
      此注释类型表示的类型
    • getAnnotation

      <T extends Annotation> T getAnnotation(Class<T> annotationClass)
      如果此元素的指定类型的注释存在,则返回该元素的注释,否则返回null。

      请注意,此方法返回的任何注释都是类型注释。

      指定者:
      getAnnotation 在接口 AnnotatedElement
      类型参数:
      T - 要查询并返回的注释类型
      参数:
      annotationClass - 对应于注释类型的Class对象
      返回:
      如果此元素上存在指定的注释类型,则返回该元素的注释,否则返回null
      抛出:
      NullPointerException - 如果给定的注释类为null
    • getAnnotations

      Annotation[] getAnnotations()
      返回此元素上存在的注释。如果此元素上没有存在的注释,则返回长度为0的数组。调用此方法的调用者可以修改返回的数组;这不会影响返回给其他调用者的数组。

      请注意,此方法返回的任何注释都是类型注释。

      指定者:
      getAnnotations 在接口 AnnotatedElement
      返回:
      此元素上存在的注释
    • getDeclaredAnnotations

      Annotation[] getDeclaredAnnotations()
      返回此元素上直接存在的注释。此方法忽略继承的注释。如果此元素上没有直接存在的注释,则返回长度为0的数组。调用此方法的调用者可以修改返回的数组;这不会影响返回给其他调用者的数组。

      请注意,此方法返回的任何注释都是类型注释。

      指定者:
      getDeclaredAnnotations 在接口 AnnotatedElement
      返回:
      此元素上直接存在的注释