许多注解头部都有@documented注解,例如jdk中自带的@Deprecated注解,路径是:java/lang/Deprecated.java,头部就含有这个注解。
@documented
@Retention(RetentionPolicy.RUNTIME)
@Target(value={CONSTRUCTOR, FIELD, LOCAL_VARIABLE, METHOD, PACKAGE, PARAMETER, TYPE})
public @interface Deprecated {
}
看看@documented的源码
@documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.ANNOTATION_TYPE)
public @interface documented {
}
那么@documented的作用是什么?
如果一个注解@B,被@documented标注,那么被@B修饰的类,生成文档时,会显示@B。如果@B没有被@documented标准,最终生成的文档中就不会显示@B。
看一些文档示例:
-
下面的图片中,类documentedAnnotationTest的上方有@MydocumentedAnnotation注解。具体代码看:Java @documented IDEA生成文档
-
下图中,是没有加documented元注解,所以最终的文档里面,并没有显示注解@B。具体代码,看博客:java 注解示例(@documented)



