java基础的入坑之路--1.注解介绍及注解和反射一起使用的简单实例

注解Annotation的作用

不是程序本身,可以对程序作出解释。(这一点,根注解没区别)

可以被其他程序(比如编译器)读取。

格式:

注解是以“@注解名”在代码中存在的,还可以添加一些参数值,

使用场景:

可以附加在package,class,method,field等上面,相当于给他们添加了额外的辅助信息,我们可以通过反射机制编制程序实现对元数据的访问。

常见注解:

@Override

定义在java.lang.Override中,此注解只适合用于修饰方法,表示一个方法声明打算重写超类中的另外一个方法声明。

@Deprecated

定义在java.lang.Deprecated中,此注解可用于修饰方法、属性、类,表示不鼓励程序员使用这样的元素,通常是因为它很危险或存在更好的选择。

@SuppressWarnings中,用来抑制编译时的警告信息

 

自定义注解

 元注解

元注解的作用负责注解其他注解。

@Target

value为参数名,elementType为参数类型 

@Retention

级别是从上往下的覆盖范围(只有RUNTIME才能被反射读取到)

@Documented

在自定义注解的时候可以使用@Documented来进行标注,如果使用@Documented标注了,在生成javadoc的时候就会把@Documented注解给显示出来。

@Inherited

 

 

创建注解SxtAnnotation01

添加@Target:只能使用在方法前面

创建Demo类

 添加注解@Retention

注解中添加变量 

 

反射机制读取注解

 创建SxtStudent类

创建注解以用来对应相关表

在类上添加注解

 

 创建注解用来对于表的属性

我们发现注解现在为止只是一个和注释没两样的东西, 现在只有通过反射才能将相关信息进行对比。在官方提供的注解中,反射基本上都已经在底层实现了。

通过反射获取类中所有的注解

或者直接通过注解类型来获取相关注解

获取属性注解上的值

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值