java.lang.reflect
public interface: AnnotatedElement [javadoc |
source]
All Known Implementing Classes:
Package, AccessibleObject, Constructor, Method, Class, Field
Represents an annotated element of the program currently running in this
VM. This interface allows annotations to be read reflectively. All
annotations returned by methods in this interface are immutable and
serializable. It is permissible for the caller to modify the
arrays returned by accessors for array-valued enum members; it will
have no affect on the arrays returned to other callers.
If an annotation returned by a method in this interface contains
(directly or indirectly) a Class -valued member referring to
a class that is not accessible in this VM, attempting to read the class
by calling the relevant Class-returning method on the returned annotation
will result in a TypeNotPresentException .
Similarly, attempting to read an enum-valued member will result in
a EnumConstantNotPresentException if the enum constant in the
annotation is no longer present in the enum type.
Finally, Attempting to read a member whose definition has evolved
incompatibly will result in a java.lang.annotation.AnnotationTypeMismatchException or an
java.lang.annotation.IncompleteAnnotationException .
Method from java.lang.reflect.AnnotatedElement Detail: |
public T getAnnotation(Class<T> annotationClass)
Returns this element's annotation for the specified type if
such an annotation is present, else null. |
public Annotation[] getAnnotations()
Returns all annotations present on this element. (Returns an array
of length zero if this element has no annotations.) The caller of
this method is free to modify the returned array; it will have no
effect on the arrays returned to other callers. |
public Annotation[] getDeclaredAnnotations()
Returns all annotations that are directly present on this
element. Unlike the other methods in this interface, this method
ignores inherited annotations. (Returns an array of length zero if
no annotations are directly present on this element.) The caller of
this method is free to modify the returned array; it will have no
effect on the arrays returned to other callers. |
public boolean isAnnotationPresent(Class<Annotation> annotationClass)
Returns true if an annotation for the specified type
is present on this element, else false. This method
is designed primarily for convenient access to marker annotations. |