@SuppressWarning 使用及支持的参数

@SuppressWarning

@SuppressWarning 是一个注解,它的作用是抑制编译时的警告,可以用于标记整个类、某个方法、某个属性或者某个参数,用于告诉编译器这个代码是安全的,不必警告。

强烈建议最小范围使用这个注解,一旦你在一个比较大的范围抑制错误,可能会把真正的问题掩盖了。

@SuppressWarning 支持的参数

  • all : 抑制所有警告
  • boxing : 抑制装箱、拆箱相关的警告
  • cast : 抑制强转相关的警告
  • dep-ann : 抑制过时注解相关的警告
  • fallthrough : 抑制没有 break 的 switch 语句的警告
  • finally : 抑制 finally 块没有 return 的警告
  • hiding : 抑制关于隐藏的本地变量的警告
  • incomplete-switch : 抑制 switch 语句中 case 不完整的警告(当 case 是枚举时)
  • nls : 抑制创建无法翻译的字符串的警告 (nls : National Language Support)
  • null : 抑制关于可能为空的警告
  • rawtypes : 抑制使用泛型作为类参数时没有指明参数类型的警告
  • restriction : 抑制使用不建议或者禁止的引用的警告
  • serial : 抑制一个可序列化类中没有 serialVersionUID 的警告
  • static-access : 抑制一个不正确的静态访问相关的警告
  • synthetic-access : 抑制未优化的内部类访问相关的警告
  • unchecked : 抑制未经检查的操作(比如强转)的警告
  • unqualified-field-access : 抑制不合格的属性访问的警告
  • unused : 抑制未使用代码相关的警告

可以看到,@SuppressWarning 的参数其实就是我们日常开发中需要注意的点,比如强转前的类型检查,空指针的检查,原始类型取值时的类型判断,静态访问的注意事项等等。

@SuppressWarning 及上面的参数使用方式

@SuppressWarning("unchecked")
//....

如果同时有多个警告需要抑制,可以在括号中用花括号把抑制的参数包起来:

@SuppressWarnings({"unchecked", "rawtypes"})

Thanks

http://blog.csdn.net/foart/article/details/6112145

你可能感兴趣的:(编译器)