当前位置: 首页 > news >正文

注解的生命周期

1、RetentionPolicy.SOURCE:注解只保留在源文件,当Java文件编译成class文件的时候,注解被遗弃,示例:@Override

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.SOURCE)
public @interface Override {
}

2、RetentionPolicy.CLASS:注解被保留到class文件,但jvm加载class文件时候被遗弃,这是默认的生命周期,示例:@NotNull

@Documented
@Retention(RetentionPolicy.CLASS)
@Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.LOCAL_VARIABLE})
public @interface NotNull {String value() default "";
}

3、RetentionPolicy.RUNTIME:注解不仅被保存到class文件中,jvm加载class文件之后,仍然存在,这类注解很多,自定义的注解往往是RUNTIME,程序运行时需要一直存在,如spirng的各类引入注解,示例:@Resource

@Target({TYPE, FIELD, METHOD})
@Retention(RUNTIME)
public @interface Resource 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 粘包、半包和Netty中的自定义帧解码器间的关系
  • 【Java设计模式】脏标记模式:通过变更跟踪优化性能
  • HTTP/3
  • 453.最小操作次数使数组元素相等
  • 产品概述Tektronix泰克TCP0030A电流探头TCP0030原装二手
  • 自然语言处理与深度学习的结合
  • pyinstaller 打包发布flask 应用
  • C++奇迹之旅:深度解析list的模拟实现
  • 【时时三省】(C语言基础)指针进阶6qsort函数的使用
  • BCC软译码和硬译码之间的性能差别
  • CAN协议通信 学习笔记
  • Linux启动流程和内核管理
  • 使用python导出Excel表格中的lua配置
  • 【网络安全 | 虚拟机】VMware Workstation Pro下载安装使用教程(免费版)
  • C语言深度复习【数组和指针】
  • 【402天】跃迁之路——程序员高效学习方法论探索系列(实验阶段159-2018.03.14)...
  • Java-详解HashMap
  • js数组之filter
  • leetcode-27. Remove Element
  • markdown编辑器简评
  • Material Design
  • NSTimer学习笔记
  • Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目
  • Transformer-XL: Unleashing the Potential of Attention Models
  • Vue2.0 实现互斥
  • WordPress 获取当前文章下的所有附件/获取指定ID文章的附件(图片、文件、视频)...
  • 分类模型——Logistics Regression
  • 看域名解析域名安全对SEO的影响
  • 老板让我十分钟上手nx-admin
  • 悄悄地说一个bug
  • 源码安装memcached和php memcache扩展
  • 3月7日云栖精选夜读 | RSA 2019安全大会:企业资产管理成行业新风向标,云上安全占绝对优势 ...
  • 智能情侣枕Pillow Talk,倾听彼此的心跳
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • #宝哥教你#查看jquery绑定的事件函数
  • #设计模式#4.6 Flyweight(享元) 对象结构型模式
  • #使用清华镜像源 安装/更新 指定版本tensorflow
  • $.ajax,axios,fetch三种ajax请求的区别
  • (175)FPGA门控时钟技术
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第5节(封闭类和Final方法)
  • (ISPRS,2021)具有遥感知识图谱的鲁棒深度对齐网络用于零样本和广义零样本遥感图像场景分类
  • (LeetCode 49)Anagrams
  • (pycharm)安装python库函数Matplotlib步骤
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (附源码)计算机毕业设计ssm基于Internet快递柜管理系统
  • (四)JPA - JQPL 实现增删改查
  • (四)鸿鹄云架构一服务注册中心
  • (四)图像的%2线性拉伸
  • (一)、python程序--模拟电脑鼠走迷宫
  • (正则)提取页面里的img标签
  • (转)C#开发微信门户及应用(1)--开始使用微信接口
  • .gitignore文件忽略的内容不生效问题解决
  • .mysql secret在哪_MYSQL基本操作(上)
  • .NET Core 控制台程序读 appsettings.json 、注依赖、配日志、设 IOptions