技术开发 频道

J2SE5.0中新特性:注释



【IT168 技术文档】
 
    运行javac test.java 出现如下警告:

    注意:test.java 使用或覆盖了已过时的 API。
    注意:要了解详细信息,请使用 -Xlint:deprecation 重新编译
    使用-Xlint:deprecation显示更详细的警告信息:

    test.java:4: 警告:[deprecation] Class1 中的 myMethod() 已过时

    public void myMethod()
    ^
    1 警告

    这些警告并不会影响编译,只是提醒你一下尽量不要用myMethod方法。

    SuppressWarnings

    这个世界的事物总是成对出现。即然有使编译器产生警告信息的,那么就有抑制编译器产生警告信息的。
    SuppressWarnings注释就是为了这样一个目的而存在的。让我们先看一看如下的代码。

public void myMethod() { List wordList = new ArrayList(); wordList.add("foo"); }
    这是一个类中的方法。编译它,将会得到如下的警告。

    注意:Testannotation.java 使用了未经检查或不安全的操作。
    注意:要了解详细信息,请使用 -Xlint:unchecked 重新编译。

    这两行警告信息表示List类必须使用范型才是安全的,才可以进行类型检查。如果想不显示这个警告信息有两种方法。一个是将这个方法进行如下改写:
public void myMethod() { List<String> wordList = new ArrayList<String>(); wordList.add("foo"); } 另外一种方法就是使用@SuppressWarnings。 @SuppressWarnings (value={"unchecked"}) public void myMethod() { List wordList = new ArrayList(); wordList.add("foo"); } 要注意的是SuppressWarnings和前两个注释不一样。这个注释有一个属性。当然,还可以抑制其它警告,如@SuppressWarnings (value={"unchecked", "fallthrough"})
0
相关文章