美文网首页JAVA基础
java注解@Retention保留时机详析

java注解@Retention保留时机详析

作者: 在岁月中远行 | 来源:发表于2022-05-01 22:31 被阅读0次

注解@Retention用来修饰注解,是注解的注解。称为元注解。

Retention注解有一个属性value,是RetentionPolicy枚举类型,决定了Retention注解应该如何去保持。

RetentionPolicy有三个值:SOURSE,CLASS ,RUNTIME。

1 注解只会保留在源文件中,编译时注解会被遗弃。

2 注解会保留到class文件中,当class文件中被加载时遗弃,这是默认的注解生命周期。

3 注解不仅被保留到class文件中,还会保留到虚拟机运行时一直存在。

对应于:源文件,.class文件,内存中的字节码。

使用场景:

如果需要在运行时反射去获取注解信息,那只能用RUNTIME注解。

如果编译时需要依赖注解进行预处理,比如生成一些辅助代码等,如Butterknihe,Arounter就用CLASS注解。

如果只是做一些检查性操作,比如@Override和@SuppressWarnings,使用

SOURSE注解,一般是供IDE使用。

相关文章

  • java注解@Retention保留时机详析

    注解@Retention用来修饰注解,是注解的注解。称为元注解。 Retention注解有一个属性value,是R...

  • @Retention @Target @Document @In

    Java中的元注解: @Retention 注解保留的位置 @Retention(Retention.Policy...

  • Java元注解

    @Retention: 定义注解的保留策略 @Retention(RetentionPolicy.SOURCE) ...

  • Spring 注解@Target @Retention @Doc

    Retention注解Retention(保留)注解说明,这种类型的注解会被保留到那个阶段. 有三个值: 1.Re...

  • Kotlin 注解

    元注解 @Retention 保留期 AnnotationRetention.SOURCE 注解只在源码阶段保留,...

  • @Retention注解简单说明

    @Retention注解简单说明 是什么: @Retention是用来修饰注解的,它定义了该注解被保留时间的长短,...

  • @Retention作用详析

    注解@Retention用来修饰注解,是注解的注解,称为元注解。Retention注解有一个属性value,是Re...

  • Spring 常用注解解析

    原生注解 @Retention: 定义注解的保留策略 @Target: 定义注解的作用目标 @Document: ...

  • 注解和反射

    (1)注解@Interface(2)@Retention 注解可以保留多长时间:RetentionPolicy....

  • 注解

    @Target -- 表示注解的作用对象 @Retention -- 表示注解类型保留的时长 @Document...

网友评论

    本文标题:java注解@Retention保留时机详析

    本文链接:https://www.haomeiwen.com/subject/ihtmyrtx.html