Java注解学习总结

目录

1、注解的作用

2、注解的创建

元注解

关键字:

格式:

3、注解的读取


1、注解的作用

         java注解有两个作用:1、它不是程序的本身,可以对程序做出解释(这一点和我们的注释区别不大,比如我们的@Deprecated 它表示的是我们当前的代码已废弃或存在风险,不建议使用);2、可以被其他程序读取(比如我们的编辑器读取)。java的注解是jdk1.5以后的版本加入的功能,它的包是java.lang.annotation。对于注解我的理解是它使我们的程序更加的优雅,让我们在某种业务场景上可以更灵活方便的处理。api中我们常用的内置注解有:@Override、@Deprecated、@Surpperwarinings

2、注解的创建

下图是一个自定义注解的结构图:

我总结了注解的三个要素:元注解、关键字、格式。

元注解

它作用是负责注释其它注解,其实就是表示我们这个注解用的位置,什么时候用。以下就是四个元注解的意义:

@Documented:表示该注解会被包含在javadoc中
@Inherited:表示子类可以继续父类的注解
@Retention:表示注解使用的生命周期,它的参数是一个枚举类RetentionPolicy的某种状态值,该类有三种状态,分别是:
     SOURCE(源代码中):比如我们的@Override注解
     CLASS(编译期):比如我们的@Surpperwarinings注解
     RUNTIME(运行时):spring中常用的注解

@Target:表示注解的使用位置,入参是ElementType的枚举值,范围详见api中的java.lang.annotation.ElementType类,这里就不做叙述了,它的作用域可以是构造器、类、包、属性、参数等等。

关键字:

@interface :创建枚举的关键字
default :默认值关键字

了解了这些东西后,其实我们可以很快的创建一个简单的自定义注解。

格式:

元注解+关键字

根据不同的业务场景,加上元注解的相关标识,定义自定义注解的使用位置


3、注解的读取

注解的读取原理是使用的反射机制,通过获取Class类中的Annotation属性,来读取该注解的值,反射的原理和读取注解的方式这里就不做描述啦,如果对反射不了解的可以去查看相关的文档,下图是一个简单的读取注解的方式:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值