注解

概念
注释是给程序员看的
注解是给编译器或计算机看的,可以理解为标签
注解也是也接口,将注解类反编译后javap,可以看到继承了,Annotation这个接口
作用分类
编写文档:通过代码里的标识的注解生成doc文档,就是javadoc,HTML文档
在这里插入图片描述
编译检查:通过代码里标识的注解,让编译器能够实现基本的编译检查比如@Override@Overlord
代码分析:通过代码里标识的注解对代码进行分析,比如反射获取运行时类
JDk中的一些注解
@Override检测该注解的方法是否是继承父类(接口)的
@Deprecated:该注解标注的内容,表示已过时
@SupperessWarning:该注解表示压制警告,一般写在类(“all”)
自定义注解格式
元注解
public @inteface 注解名{
注解属性类型–属性名
int ------------value()
}
注解属性:

因为注解其实也是一个接口,所以属性就是抽象方法,返回值为类型,方法名为属性名称.属性类型包括八大基本类型,注解,String,枚举类型.
属性名是value(),可以不用写,你写多少个属性,那么你在用注解标注元素的时候,就要用多少属性,因此出现了default这个关键字,可以为属性设置默认值,就可以不用必须设置该属性

元注解(就是注解的注解)

1)当我们在自定义注解的时候一定要表名该注解的作用域和运行范围
2)@Target:表名该注解修饰什么地方,ElementType.TYPE(类)METHOD(方法)FIELD(属性)
3)Retention:描述该注解在哪个阶段有用RetentionPlioy.SOURCE源代码阶段,ClASS编译字节码阶段不会进入JVM,RUNTIME,运行时阶段,会进入JVM,所以我们可以在运行时获取
4)Inherited描述该注解修饰的注解修饰的类有继承性
class A{}–class B extends A{} 假如修饰A类的注解被Inherited修饰了,那么b类也有该注解的功能
5)Document该注解修饰的注解会被保存到dog文档中
6)最后自己结合反射和注解写了一个测试工具类
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值