一、什么是注解
注解(Annotation),也叫元数据,标签,注释。注解叫注释的时候,容易和java的代码注释混淆,一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。
注解的另一个称呼注释,是给程序看的,大家可以将注解看成是一个标签,只不过这个标签有特殊含义,可能会执行特定的操作
JAVA代码注释,是给程序员看的
Java中的注解也叫做注释:给程序看的,注解也相当于标签,贴在代码的位置,赋予特殊意义
注解也叫作元数据:描述数据的数据
二、为什么要学习注解
1.注解可以使得代码更加的简洁,逻辑更加清爽
2.方便以后用别人的注解,比如第三方程序…
3.装逼: …使用注解写程序[自己搞注解,牛皮]
三、注解的作用
①编写文档:事实上,在Java中我们可以通过注解去生成API文档,例如我们常见的参数值【@parameter】,返回值【@return】等,只有标识了这些,我们才能通过API文档更快速和有条理的查看到对应的相关信息导出含有注解的API文档
②代码分析:通过代码里标识的元数据对代码进行分析【使用反射】
(可以通过反射 看这个类有没有注解,有注解的时候,代码应该怎么写,没有注解的时候,应该怎么写)
③编译检查:通过代码里标识的元数据让编译器能够实现基本的编译检查
(如果给一串代码上添加一个注解,它会自动帮我们检测是不是正确的,是否符合java规范;)
④解耦:将一些重复的代码给封装到注解里,要使用的时候就直接在需要的地方加上相关的注解就行了,避免代码冗余
四、怎么使用注解(so easy)
注解怎么写:
@ + 注解的名称 – 比如@Override ->注解
它可以贴在方法,类,字段…
不需要自己去完成代码,别人的注解,已经是别人完成的功能,直接使用就是;
自己写的注解,需要自己写代码去完成,这个不是绝对的;
五、注解三要素
需要有一个注解;(有一个标签)
使用这个注解(这个注解贴在什么地方);
第三方程序为注解实现功能;
六、JDK四大内置注解
1、@Override注解用于标识方法重写,例如当前实体类中重写tostring()方法
2、@Deprecated注解用于标识方法已过时
3、@SuppressWarings注解用于抑制编译器警告,直白的讲就是消除Idea或者Eclipse上那些黄色警告线,但编译器里关于这条警告的信息还在
4、@SafeVarargs抑制堆污染警告(单独警告),直白的讲就是使用泛型和可变参数搭配使用将会产生的编译器警告,可以使用@SuppressWarnings消除警告,后来在Java7引入了新的注解,就是@SafeVarargs,如果开发人员确信某个使用了可变参数的方法,在与泛型类一起使用时不会出现类型安全问题,就可以用这个注解进行声明,这样编译器就不会报警告
七、JDK的元注解
为什么有些注解它只能写在方法上边,而有些注解它同时也可以写到类上边,想要知道这个,那就要先了解JDK的元注解
那什么是元注解
元注解的作用就是用于定义其他注解,是由JAVA为我们提供的,不能更改,从JAVA5.0开始一共为我们提供了四个元注解
分别是:@Target, @Retention, @Document, @Inherited;