web-dev-qa-db-ja.com

複数の@SuppressWarningsアノテーションを組み合わせる-Eclipse Indigo

そのため、複数の警告抑制を組み合わせて、各アイテムが独自の@SuppressWarningsアノテーションを必要としないようにすることができます。

たとえば、次のとおりです。

public class Example
    public Example() {
        GO go = new GO();  // unused
        ....
        List<String> list = ( List<String> ) go.getList(); // unchecked
    }
    ...
    // getters/setters/other methods
}

ここで、2つの@SuppressWarningsを使用する代わりに、これらの2つの警告に対してクラスレベルで1つ使用したいので、次のようにします。

@SuppressWarnings( "unused", "unchecked" )
public class Example
    public Example() {
        GO go = new GO();  // unused - suppressed
        ....
        List<String> list = ( List<String> ) go.getList(); // unchecked - suppressed
    }
    ...
    // getters/setters/other methods
}

しかし、それは有効な構文ではありません。これを行う方法はありますか?

134
knownasilya

次を使用してください:@SuppressWarnings({"unused", "unchecked"})

279
LuGo

注釈の内部を見ると、これが表示されます:

public @interface SuppressWarnings {
    String[] value();
}

ご覧のとおり、valueパラメーターは文字列の配列です...注釈のパラメーターは次のようになります。value1、value2またはvalueここで

final String[] value1 = { "a1" };
final String[] value2 = { "a1", "a2" };
final String[] value3 = { "a1", "a2", "a3" };

すなわち:

@SuppressWarnings({"unused"})
@SuppressWarnings({"unused", "javadoc"})

あなたは次のようなものをしばしば見ることができます

@SuppressWarnings("unused") 

これは、「{} "