首页 > 编程知识 正文

java注解大全,java注解

时间:2023-05-06 00:35:51 阅读:175371 作者:2344

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

Retention注释具有RetentionPolicy类型的属性value,而Enum RetentionPolicy是枚举类型。

RetentionPolicy上有CLASS RUNTIME SOURCE

按生命周期来划分可分为3类:

1、RetentionPolicy.SOURCE :注释仅保留在源文件中,当Java文件编译为class文件时,注释将被丢弃;

2、RetentionPolicy.CLASS :注释保留在class文件中,但在jvm加载class文件时会被丢弃。 这是默认的生命周期;

3、RetentionPolicy.RUNTIME :注释不仅保存在class文件中,在jvm加载class文件后还存在;

这三个生命周期分别对应于Java源文件. Java文件、— .class文件和内存中的字节码。

那怎么来选择合适的注解生命周期呢?

首先要明确生命周期长SOURCE CLASS RUNTIME,所以前者发挥作用的地方后者也一定发挥作用。

通常,如果需要在运行时动态获取注释信息,则只能使用RUNTIME注释。 例如,@Deprecated使用RUNTIME注释

如果要执行预处理操作,例如在编译时生成辅助代码(如ButterKnife ),请使用CLASS注释。

@Override和@SuppressWarnings等,如果只是进行检查性操作的话,就使用SOURCE注释。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。