dijiuzu

 

20220810 第一组 于芮 注解与反射(第二十九天)

 
小白成长记——第二十九天
 
   今天的主要学习内容是注解与反射的应用,也算是Java基础比较末尾的知识点了,相对来说可能没有那么重要,但是同样也是不可缺少的部分,但是这部分内容并不是很难理解,而且内容较少,没有那么重的负担,来看一下今天的学习笔记吧!

注解和反射
注解(annotation)java标注,JDK5引入的机制,
java中的类,方法,变量,参数,包都可以被标注
元注解:专门给注解加的注解
注解中可以有方法
1.定义方法的格式:String name();
2.可以有默认值,也可没有,如果没有默认值,使用的时候必须填写对应的值,如果有默认值,使用default指定默认值
3.如果想在使用的时候不指定具体的名字,可以使用方法名value

在java整个注解体系中,三个重要的主干类
1.annotation:接口,定义一些常用的方法
2.elementtype:枚举
3.retentionpolicy:枚举,用来指定注解的策略,不同类型的策略指定注解的作用域不同
(1)source:注解仅存在于编译期处理期间,编译期处理完之后,注解无效
(2)class:注解在.class文件中依然有效,不管是在编译期还是在运行期
(3)runtime:编译期无效,只有在运行期才由JVM读取

java自带的注解(10个,其中4个是java.lang.annotation包,剩下6个在java.lang)
作用在代码上的注解
1.@override检查该方法是否是重写方法,如果返现其父类,或者引用的接口中没有该方法,会报错
2.@deprecated 标记的方法,过时的方法
3.@suppresswarnings编译期忽略警告
4.@safevarargs忽略任何使用参数为泛型变量的方法或构造器产生的警告
5.@functioninterface函数式接口,表示一个接口为函数式接口,JDK8开始
6.@repeatable表示某个注解在同一个声明上使用多次
all忽略所有警告
boxing忽略装箱,拆箱
rowtype使用生成时没有指定数据类型
unchecked忽略没有进行类型检查操作的警告
unused:忽略没有使用的警告

元注解
1.@retention 表示这个注解的作用域
2.@documented表示这个注解是否包含在用户文档中
3.@target这个注解可以修饰哪些信息
4@inherited如果一个类用上了这个注解,那么其子类也会继承这个注解

反射
class类(泛型类)
1.直接使用.class
2.使用全类名
3.使用对象

    今天的主要内容就是这些,主要还是老师留下时间让我们可以复习一下前边的内容,还是要学会温故而知新,不能捡了芝麻丢了西瓜,知识是通过积累,才会越攒越多的。

posted on 2022-08-10 20:49  于芮  阅读(54)  评论(0编辑  收藏  举报

导航