@SuppressWarnings
@SuppressWarnings Suppress英文的意思是抑制的意思,这个注解的用处是忽略警告信息。
比如大家使用集合的时候,有时候为了偷懒,会不写泛型,像这样:
List heros = new ArrayList();
那么就会导致编译器出现警告,而加上
@SuppressWarnings({ "rawtypes", "unused" })
就对这些警告进行了抑制,即忽略掉这些警告信息。
@SuppressWarnings 有常见的值,分别对应如下意思
1,deprecation:使用了不赞成使用的类或方法时的警告(使用@Deprecated使得编译器产生的警告);
2,unchecked:执行了未检查的转换时的警告,例如当使用集合时没有用泛型 (Generics) 来指定集合保存的类型; 关闭编译器警告
3,fallthrough:当 Switch 程序块直接通往下一种情况而没有 Break 时的警告;
4,path:在类路径、源文件路径等中有不存在的路径时的警告;
5,serial:当在可序列化的类上缺少 serialVersionUID 定义时的警告;
6,finally:任何 finally 子句不能正常完成时的警告;
7,rawtypes 泛型类型未指明
8,unused 引用定义了,但是没有被使用
9,all:关于以上所有情况的警告。代码比较复制代码
package annotation;
import java.util.ArrayList;
import java.util.List;
public class Hero {
String name;
@SuppressWarnings({ "rawtypes", "unused" })
public static void main(String[] args) {
List heros = new ArrayList();
}
}
@SafeVarargs
@FunctionalInterface
参考源于:
http://how2j.cn/k/annotation/annotation-system/1060.html#nowhere