使用 @SuppressWarnings 来排除警告
从 Java 5.0 开始,可以使用 java.lang.SuppressWarning 注释来禁用与一部分编译单元相关的编译警告。
@SuppressWarning("unused") public void foo() {
String s;
}
如果未指定此注释,编译器就会发出警告消息以指示从未使用局部变量 s。指定此注释后,编译器将在该
foo 方法局部以静默方式忽略此警告。这就可以保留同一编译单元或同一项目中其他位置的警告。
可以在 SuppressWarnings 注释中使用的标记列表如下所示:
- all 抑制所有警告
- boxing 抑制与装箱/拆箱操作相关的警告
- cast 抑制与强制转换类型操作相关的警告
- dep-ann 抑制与不推荐使用的注释相关的警告
- deprecation 抑制与不推荐使用的内容相关的警告
- fallthrough 抑制与 switch 语句中缺少的 break 相关的警告
- finally 抑制与未返回的 finally 块相关的警告
- hiding 抑制与隐藏变量的局部变量相关的警告
- incomplete-switch 抑制与 switch 语句(枚举 case)中缺少的条目相关的警告
- javadoc 抑制与 Javadoc 警告相关的警告
- nls 抑制与非 nls 字符串文字相关的警告
- null 抑制与 null 分析相关的警告
- rawtypes 抑制与原始类型的使用相关的警告
- resource 抑制与“可关闭”类型的资源的使用相关的警告
- restriction 抑制与使用不推荐的引用或禁止的引用相关的警告
- serial 抑制由于可序列化类缺少 serialVersionUID 字段而发出的警告
- static-access 抑制与不正确的静态访问相关的警告
- static-method 抑制与可能声明为静态方法的方法相关的警告
- super 抑制与没有超级调用的情况下覆盖方法相关的警告
- synthetic-access 抑制与内部类中未优化的访问相关的警告
- sync-override 抑制因覆盖同步方法时丢失同步产生的警告
- unchecked 抑制与未检查的操作相关的警告
- unqualified-field-access 抑制与未限定的字段访问相关的警告
- unused 抑制与未使用代码和死代码相关的警告