Skip to content

Java注解核心笔记

一、注解基础概念

注解是元数据标签,自身不包含业务执行逻辑,仅做标记;依靠@Retention划分3种生命周期,由编译器、字节码工具、框架处理器根据注解标记完成对应逻辑处理。

  1. SOURCE:仅源码阶段生效,编译后丢弃,交由编译器校验(例:@Override
  2. CLASS:存入class字节码文件,运行时JVM不加载,供ASM等字节码工具解析(例:@JsonIgnore
  3. RUNTIME:保留至程序运行期,框架通过反射读取注解实现功能(例:@Transactional

二、四大元注解(定义注解的注解,面试重点)

元注解用于自定义注解,共4个核心注解:

注解作用说明
@Retention约束注解生命周期,三选一:SOURCE/CLASS/RUNTIME,决定注解存活阶段
@Target限定注解可标注位置:类、成员变量、方法、形参、构造器等
@Documented标注后,注解信息会被提取进JavaDoc文档
@Inherited开启注解继承特性:子类可自动继承父类上标注的该注解;默认注解无法被继承

Powered by VitePress 1.6.4 | 持续更新中