-
@Retention(RetentionPolicy.RUNTIME) /** * RetentionPolicy.SOURCE 保留在.java 中 编译成 class 会被遗弃 * RetentionPolicy.CLASS 会被保留到class中 但jvm加载class文件的时候会被遗弃 默认的生命周期 * RetentionPolicy.RUNTIME 不仅会被保存到class文件中 而且 jvm加载class之后还会存在 */ -
@Target(ElementType.FIELD) /** * ElementType.TYPE 接口 类 枚举 * ElementType.FIELD 字段 枚举常量 * ElementType.METHOD 方法 * ElementType.PARAMETER 方法参数 * ElementType.CONSTRUCTOR 构造函数 * ElementType.LOCAL_VARIABLE 局部变量 * ElementType.ANNOTATION_TYPE 注解 * ElementType.PACKAGE 包 */ -
@Inherited // 是否能被继承与实现 (说明子类可以继承父类中的该注解) -
@Documented // 是否在文档展示 (说明该注解将被包含在javadoc中)