Java的注解接口java.lang.annotation.Retention定义注解保留多长时间。如果在注解接口的声明上没有Retention注解,那么默认的保留策略是RetentionPolicy.CLASS。
Retention只有一个元素value,类型是RetentionPolicy。
RetentionPolicy是一个枚举类型,定义了几个保留策略:
https://docs.oracle.com/en/java/javase/19/docs/api/java.base/java/lang/annotation/RetentionPolicy.html

-
RetentionPolicy.CLASS:注解被编译器记录在class文件中,但在运行时虚拟机没有必要保留。例如:

-
RetentionPolicy.RUNTIME:注解被编译器记录在class文件中,运行时被虚拟机保留,因此它们可以通过反射的方法读取。例如:

-
RetentionPolicy.SOURCE:注解被编译器丢弃。













![2023年中国有创呼吸机产量、需求量及行业市场规模分析[图]](https://img-blog.csdnimg.cn/img_convert/96ed74d0f2764f882efdcacf8a0b49e9.png)

![2023年中国热电厂发电装机量、热电厂发电量及市场需求分析[图]](https://img-blog.csdnimg.cn/img_convert/4f934f796f480e61848591ee361ec179.png)
![2023年中国液晶显示板产量、需求量、市场规模及价格趋势分析[图]](https://img-blog.csdnimg.cn/img_convert/2fa64e9e07355186e234baab42de42cd.png)


