# Package java.lang.annotation

package java.lang.annotation
Provides library support for the Java programming language annotation facility.

Since:
  1.5

Related Packages
Package
Description
java.lang
Provides classes that are fundamental to the design of the Java programming language.
Class
Description
Annotation
The common interface extended by all annotation interfaces.
AnnotationFormatError
Thrown when the annotation parser attempts to read an annotation from a class file and determines that the annotation is malformed.
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).
Documented
If the annotation `@Documented` is present on the declaration of an annotation interface A, then any `@A` annotation on an element is considered part of the element's public contract.
ElementType
The constants of this enumerated class provide a simple classification of the syntactic locations where annotations may appear in a Java program.
IncompleteAnnotationException
Thrown to indicate that a program has attempted to access an element of an annotation interface that was added to the annotation interface definition after the annotation was compiled (or serialized).
Inherited
Indicates that an annotation interface is automatically inherited.
Native
Indicates that a field defining a constant value may be referenced from native code.
Repeatable
The annotation interface `java.lang.annotation.Repeatable` is used to indicate that the annotation interface whose declaration it (meta-)annotates is repeatable.
Retention
Indicates how long annotations with the annotated interface are to be retained.
RetentionPolicy
Annotation retention policy.
Target
Indicates the contexts in which an annotation interface is applicable.