|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.reflect
接口 AnnotatedElement
- 所有已知实现类:
- AccessibleObject, Class, Constructor, Field, Method, Package
-
public interface AnnotatedElement
表示目前正在此 VM 中运行的程序的一个已注释元素。该接口允许反射性地读取注释。由此接口中的方法返回的所有注释都是不可变并且可序列化的。调用方可以修改已赋值数组枚举成员的访问器返回的数组;这不会对其他调用方返回的数组产生任何影响。
如果此接口中的方法返回的注释(直接或间接地)包含一个已赋值的 Class
成员,该成员引用了一个在此 VM 中不可访问的类,则试图通过在返回的注释上调用相关的类返回的方法来读取该类,将导致一个 TypeNotPresentException
。
类似地,如果注释中的枚举常量不再以枚举类型存在,那么试图读取一个已赋值的枚举成员将导致一个 EnumConstantNotPresentException
。
最后,阅读其定义已经引起不兼容性的成员将导致 AnnotationTypeMismatchException
或 IncompleteAnnotationException
。
- 从以下版本开始:
- 1.5
方法摘要 | ||
---|---|---|
|
getAnnotation(Class<T> annotationType) 如果存在该元素的指定类型的注释,则返回这些注释,否则返回 null。 |
|
Annotation[] |
getAnnotations() 返回此元素上存在的所有注释。 |
|
Annotation[] |
getDeclaredAnnotations() 返回直接存在于此元素上的所有注释。 |
|
boolean |
isAnnotationPresent(Class<? extends Annotation> annotationType) 如果指定类型的注释存在于此元素上,则返回 true,否则返回 false。 |
方法详细信息 |
---|
isAnnotationPresent
boolean isAnnotationPresent(Class<? extends Annotation> annotationType)
- 如果指定类型的注释存在于此元素上,则返回 true,否则返回 false。此方法主要是为了便于访问标记注释而设计的。
-
- 参数:
-
annotationType
- 对应于注释类型的 Class 对象 - 返回:
- 如果指定注释类型的注释存在于此对象上,则返回 true,否则返回 false
- 抛出:
-
NullPointerException
- 如果 annotationType 为 null - 从以下版本开始:
- 1.5
getAnnotation
<T extends Annotation> T getAnnotation(Class<T> annotationType)
- 如果存在该元素的指定类型的注释,则返回这些注释,否则返回 null。
-
- 参数:
-
annotationType
- 对应于注释类型的 Class 对象 - 返回:
- 如果该元素的指定注释类型的注释存在于此对象上,则返回这些注释,否则返回 null
- 抛出:
-
NullPointerException
- 如果 annotationType 为 null - 从以下版本开始:
- 1.5
getAnnotations
Annotation[] getAnnotations()
- 返回此元素上存在的所有注释。(如果此元素没有注释,则返回长度为零的数组。)该方法的调用方可以随意修改返回的数组;这不会对其他调用方返回的数组产生任何影响。
-
- 返回:
- 此元素上存在的所有注释
- 从以下版本开始:
- 1.5
getDeclaredAnnotations
Annotation[] getDeclaredAnnotations()
- 返回直接存在于此元素上的所有注释。与此接口中的其他方法不同,该方法将忽略继承的注释。(如果没有注释直接存在于此元素上,则返回长度为零的一个数组。)该方法的调用方可以随意修改返回的数组;这不会对其他调用方返回的数组产生任何影响。
-
- 返回:
- 直接存在于此元素上的所有注释
- 从以下版本开始:
- 1.5
所有类
|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |