java.lang.annotation

Annotations

Documented Indicates that annotations with a type are to be documented by javadoc and similar tools by default. 
Inherited Indicates that an annotation type is automatically inherited. 
Native Indicates that a field defining a constant value may be referenced from native code. 
Repeatable The annotation type java.lang.annotation.Repeatable is used to indicate that the annotation type whose declaration it (meta-)annotates is repeatable
Retention Indicates how long annotations with the annotated type are to be retained. 
Target Indicates the contexts in which an annotation type is applicable. 

Interfaces

Annotation The common interface extended by all annotation types. 

Enums

ElementType A program element type. 
RetentionPolicy Annotation retention policy. 

Exceptions

AnnotationTypeMismatchException Thrown to indicate that a program has attempted to access an element of an annotation whose type has changed after the annotation was compiled (or serialized). 
IncompleteAnnotationException Thrown to indicate that a program has attempted to access an element of an annotation type that was added to the annotation type definition after the annotation was compiled (or serialized). 

Errors

AnnotationFormatError Thrown when the annotation parser attempts to read an annotation from a class file and determines that the annotation is malformed.