2

ステートメントのSuppressWarnings上の注釈の何が問題になっていますか?ifEclipse with Sun JDK 6は、コメントに示されているように、役に立たないものと理解しにくいものの2つの構文エラーの説明を提供します。

class TestDeadCode
{
    //@SuppressWarnings("all")
    public static void main(String[] args)
    {
        @SuppressWarnings("all")  // syntax errors: insert enum body, insert enum id
        if ((Constants.flag0) && (Constants.flag1))
            System.out.println("hello\n");      
    }
}

interface Constants
{
    boolean flag0 = false;
    boolean flag1 = false;
}
4

1 に答える 1

8

クラス、メソッド、変数宣言、パラメーター、およびパッケージのみに注釈を付けることができます。したがって、ifステートメントでSuppressWarnings( "all")を使用することはできません。

この問題を修正するには、次の手順を実行するだけです。

@SuppressWarnings("all")
boolean flag = Constants.flag0 && Constants.flag1;
if (flag) {
    System.out.println("hello\n");
}

現在のところ、SuppressWarnings( "デッドコード")はありません。

http://docs.oracle.com/javase/7/docs/api/java/lang/SuppressWarnings.html http://pmd.sourceforge.net/suppressing.html

于 2012-01-14T07:13:42.267 に答える