@SuppressWarnings有什么用?

fre*_*iew 5 java annotations suppress-warnings

我不明白Java的这个特性.我知道它使编码更容易,有时看起来更整洁,但实际使用的是什么?相反,我觉得,最好显示警告,因为将来任何人都可以在修改代码之前引用它们.这个@SuppressWarnings是否会提高压缩效率,还是根据任何编码标准?

jue*_*n d 9

在编程时,您应该注意编译器警告,并且在最好的情况下编译代码时没有警告(当然也有错误).

但有时你不能摆脱警告,你知道代码是正确的或无法更改.那么你不希望每次都从编译器中发现错误.

所以你可以用你提到的命令来抑制它.


axt*_*avt 6

其他答案已经解释@SuppressWarnings了很多用例,但我想强调一点,有时你绝对需要@SuppressWarnings用来克服语言本身的局限性,在这些情况下使用@SuppressWarnings是绝对合法的.

在其他情况下,使用@SuppressWarnings可以被认为是有问题的,因为在这些情况下,您总是可以通过更改代码来消除警告(尽管显然,它并不总是可以接受).

以下是一些常见情况,如果没有以下情况绝对无法摆脱警告@SuppressWarnings:

  • 实现一个支持数组的泛型集合(因为你不能创建一个通用数组)
  • 一个Map从类的实现(因为你不能将泛型类型参数的不同值以不同的地图entires)