@Documented @Retention(RUNTIME) @Target(ANNOTATION_TYPE) public @interface Documented
If the annotation
@Documentedis present on the declaration of an annotation type A, then any
@Aannotation on an element is considered part of the element's public contract. In more detail, when an annotation type A is annotated with
Documented, the presence and value of annotations of type A are a part of the public contract of the elements A annotates. Conversely, if an annotation type B is not annotated with
Documented, the presence and value of B annotations are not part of the public contract of the elements B annotates. Concretely, if an annotation type is annotated with
Documented, by default a tool like javadoc will display annotations of that type in its output while annotations of annotation types without
Documentedwill not be displayed.