目录
一、作用
- 1.@Retention [rɪˈtenʃn]保持、维持的意思,可以用来修饰注解,是注解的注解,称为元注解
- 2.@Retention有一个属性value,是RetentionPolicy类型的,Enum RetentionPolicy是一个枚举类型
- 3.RetentionPolicy有CLASS、RUNTIME、SOURCE
- 4.RetentionPolicy.SOURCE:被修饰的注解只会保留在源文件,当.java文件编译成.class文件时,被修饰的注解会被遗弃
- 5.RetentionPolicy.CLASS:被修饰的注解被保留到.class文件,jvm加载.class文件时候被遗弃,是默认的生命周期
- 6.RetentionPolicy.RUNTIME:被修饰的注解不仅被保存到.class文件中,jvm加载class文件之后还会存在
- 7.java源文件(.java文件) 、编译后的文件(.class文件) 、内存中的字节码,生命周期比较 SOURCE < CLASS < RUNTIME ,作用范围越来越大