SE - 注解(@)

一、注解样式

@ 注解名 ,就是注解

例如:@Override,用在重写的方法上面

二、注解有什么用?

  • 注解是一种特殊的注释。
  • 代码基本的注释。不仅可以给人以说明解释作用
  • 也可以给另一段代码读取,提供相关的信息。
  • 例如: @Override,
    1. 程序员看到它,就知道这个方法是重写父类或父接口的方法。
    2. 编译器(javac.exe程序)看到它,就会对这个方法进行严格的格式校验,按照“重写”的要求进行校验。

三、元注解(4个)

1、定义

在声明注解时,加在注解上面的注解称为元注解。

2、具体作用及对应注解

  • @Target:限定注解使用位置(10个位置)
  • @Retention:标注注解的生命周期(也叫保持性策略—3个)
  • @Documented:标记这个注解可以被Javadoc.exe工具生成到API帮助文档中
  • @Inherited:用于注解声明时表示该注解可以被子类继承

四、注解生命周期(Retention详解)

1、注解的生命周期有三个阶段:SOURCE,CLASS,RUNTIME

  • SOURCE:源代码,源代码中这个注解存在,编译后这个注解忽略了
  • CLASS:字节码阶段,源代码和字节码中这个注解都有,但是一旦被加载到内存,这个注解就忽略了
  • RUNTIME:无论是源代码,还是字节码,甚至是加载后的JVM内存,这个注解都仍然存在。

2、注意事项

  • 注解的生命周期用RetentionPolicy枚举类型的三个常量对象表示。(以上三个)
  • 在声明注解时,需要指定注解的生命周期,否则默认是SOURCE阶段。
  • 如果要确保这个注解在反射阶段仍然可以被读取到,需要标记它的生命周期是RetentionPolicy.RUNTIME。

五、注解的使用位置(@Target详解)

TYPE(类/接口/枚举声明的上面),

FIELD(成员变量上),

METHOD(方法上)

PARAMETER(形参上)

CONSTRUCTOR(构造器),

LOCAL_VARIABLE(局部变量上),

 ANNOTATION_TYPE(注解声明上),

PACKAGE(包上),

TYPE_PARAMETER(泛型声明上),

TYPE_USE(泛型使用上)
 

(ps:整理不易,就想要个赞,给点鼓励吧,孩子想坚持下去)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值