解释一:
解释二:
注释类型
当你的编码可能存在警告时,比如安全警告,可以用它来消除
api中是这样描述的
指示应该在注释元素(以及包含在该注释元素中的所有程序元素)中取消显示指定的编译器警告。注意,在给定元素中取消显示的警告集是所有包含元素中取消显示的警告的超集。例如,如果注释一个类来取消显示某个警告,同时注释一个方法来取消显示另一个警告,那么将在此方法中同时取消显示这两个警告。
根据风格不同,程序员应该始终在最里层的嵌套元素上使用此注释,在那里使用才有效。如果要在特定的方法中取消显示某个警告,则应该注释该方法而不是注释它的类。
解释三:
@SuppressWarnings
J2SE
一点背景:J2SE 5.0
默认情况下,Sun
关键字 | 用途 |
deprecation | 使用了不赞成使用的类或方法时的警告 |
unchecked | 执行了未检查的转换时的警告,例如当使用集合时没有用泛型 |
fallthrough | 当 |
path | 在类路径、源文件路径等中有不存在的路径时的警告。 |
serial | 当在可序列化的类上缺少 |
finally | 任何 |
all | 关于以上所有情况的警告。 |
@SuppressWarnings
下面是使用
public class DeprecatedExample2 { @Deprecated public static void foo() { } } public class DeprecatedUser2 { @SuppressWarnings(value={"deprecation"}) public static void main(String[] args) { DeprecatedExample2.foo(); } }
@SuppressWarnings
因为
public class DeprecatedUser2 { @SuppressWarnings({"deprecation"}) public static void main(String[] args) { DeprecatedExample2.foo(); } }
您可以将单个数组参数中的任意数量的字符串值传递给批注,并在任何级别上放置批注。例如,以下示例代码指示将取消整个类的deprecation
import java.util.*; @SuppressWarnings({"deprecation"}) public class NonGenerics { @SuppressWarnings({"unchecked","fallthrough"}) public static void main(String[] args) { Runtime.runFinalizersOnExit(); List list = new ArrayList(); list.add("foo"); } public static void foo() { List list = new ArrayList(); list.add("foo"); } }
@SuppressWarnings
更进一步
如果您试图在
注意到了附加在