注解
注解概述
我们可以把注解理解为一种代码级别的说明,功能性说明,是从JDK1.5之后引入的新特性,格式:@注解名称
对比注释,是给开发者看的,带代码没有任何影响,注解,是给JVM看的,具有功能的代码。
- 定义:也叫元数据,是一种具有代码级别的说明,它同接口、类、枚举是在同一层次上。它可以声明在类、方法、属性、包、局部变量、方法参数等上面,用来对这些元素进行说明,注释。
- 本质:就是一个接口,该接口默认继承Annotation接口。
注解的作用
在目前的主流应用中主要是替代配置文件(如xml文件)
- 在Servlet2.5之前不支持注解开发,从Servlet3.0开始支持注解开发,不再需要到web.xml文件中去注册Servlet信息
- 优点:开发效率高,代码精简度高
- 缺点:代码耦合性太强了,维护困难。
常见的内置注解(原生)
-
@Override:是在java.lang包中,告知编译期此方法是重写父类中的方法
-
@SuppressWarning:是在java.lang包中,告知编译期此处内部有风险,抑制编译时的警告信息。
- 此注解需要搭配参数/属性才可以使用
- 参数/属性的名称是value,参数类型是String[]
- unused : 未使用
- unchecked :未检查(强制类型转换时泛型参数使用未指定),使用List、ArraytList等未进行参数化产生的警告
- deprecation:过时
- all :抑制所有
-
@Deprecated:是在java.lang包中,告知编译期此方法是过时的,是不被鼓励的,可能有更好的方法替代了,但是被此注解标记的方法依然可以使用。