1. Annotation概述
2. 生成文档相关的注解
3.JDK内置的三个基本注解
4. 如何自定义注解(了解,开发中通常用现成的注解)
5. jdk提供的四种元注解
定义:JDK 的元 Annotation 用于修饰其他 Annotation 定义,即对现有的注解进行解释说明的注解称为元注解
一般出现在自定义注解源码的上面。
JDK5.0
提供了
4
个标准的
meta-annotation(元注解)
类型,分别是:
Retention
Target
Documented
Inherited
5.1 @Retention
@Retention
:
只能用于修饰一个
Annotation 的
定义
,
用于指定该
Annotation
的生命周期, @Rentention
包含一个
RetentionPolicy
类型的成员变量
,
使用@Rentention 时必须为该
value
成员变量指定值
:
其实 RetentionPolicy就是一种枚举类,SOURCE、CLASS、RUNTIME是枚举类内部定义的三个对象,用来表示不同的状态
- RetentionPolicy.SOURCE:在源文件中有效(即源文件保留),编译器直接丢弃这种策略的注释
- RetentionPolicy.CLASS:在class文件中有效(即class保留) , 当运行 Java 程序时, JVM不会保留注解。 (RetentionPolicy默认为此状态)
- RetentionPolicy.RUNTIME:在运行时有效(即运行时保留),当运行 Java 程序时, JVM 会保留注释。程序可以通过反射获取该注释。
例子:注解MyAnnotation在定义时上面的元注解
5.2 @Target
5.3(很少用)
6. 可重复注解——JDK8中注解的新特性
7. 类型注解——JDK8中注解的新特性