目录
一、作用
在java编辑器过程中会出现很多警告,有很多是安全的,但是每次编译有很多警告影响我们对error的过滤和修改,我们可以在代码中加上@SupepressWarnings("xxxx")注解来解决;告诉编辑器忽略指定的警告,不在编译完成后出现警告信息,这些警告信息显示在代码左侧行列栏,会挡住调试时的断点。可注解类、字段、方法、参数、局部变量、构造函数。
二、使用方式
- @SuppressWarnings("") 如: @SuppressWarnings("unchecked")
- @SuppreWarnings({}) 如: @SuppressWarnings({"unchecked","rawtypes"})
- @SuppressWarnings(value = {}) 如: @SuppressWarning(value = {"unchecked","rawtypes"})
举例:没使用@SuppressWarnings注解之前
使用之后:
三、用途列表
根据使用需要,选择表中的关键字。
关键字 | 用途 |
@SuppressWarnings(“unchecked”) | 抑制未检查的转化,例如集合没有指定类型的警告 |
@SuppressWarnings(“unused”) | 抑制未使用的变量的警告 |
@SuppressWarnings(“resource”) | 抑制与使用Closeable类型资源相关的警告 |
@SuppressWarnings(“path”) | 抑制在类路径,原文件路径中有不存在的路径的警告 |
@SuppressWarnings("deprecation") | 抑制使用了某些不赞成使用的类和方法的警告 |
@SuppressWarnings("fallthrough") | 抑制switch语句执行到底没有break关键字的警告 |
@SuppressWarnings("serial") | 抑制某类实现Serializable,但是没有定义serialVersionUID,这个需要但是不必须的字段的警告 |
@SuppressWarnings("rawtypes") | 抑制没有传递带有泛型的参数的警告 |
@SuppressWarnings("all") | 抑制全部类型的警告 |
@SuppressWarnings("unqualified-field-access") | 抑制没有权限访问的域的警告 |
@SuppressWarnings("synthetic-access") | 抑制子类没有按最优方法访问内部类的警告 |
@SuppressWarnings("static-access") | 抑制不正确的静态访问方式警告 |
@SuppressWarnings("incomplete-switch") | 忽略没有完整的switch语句 |
@SuppressWarnings("dep-ann") | 抑制启用注释的警告 |
@SuppressWarnings("boxing") | 抑制装箱、拆箱操作时候的警告 |
@SuppressWarnings("cast") | 抑制映射相关的警告 |
@SuppressWarnings("finally") | 抑制finally模块没有返回的警告 |
@SuppressWarnings("hiding") | 抑制相对于隐藏变量的局部变量的警告 |
@SuppressWarnings("nls") | 忽略非nls格式的字符 |
@SuppressWarnings("null") | 忽略对null的操作 |