Таким образом, проблема заключается в возможности комбинировать несколько подавлений предупреждений, чтобы каждый элемент не нуждался в собственной @SuppressWarnings
аннотации.
Так, например:
public class Example
public Example() {
GO go = new GO(); // unused
....
List<String> list = ( List<String> ) go.getList(); // unchecked
}
...
// getters/setters/other methods
}
Теперь вместо двух @SuppressWarnings
я хочу иметь одно на уровне класса для этих двух предупреждений, вот так:
@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
}
Но это неверный синтаксис, есть ли способ сделать это?
java
eclipse
annotations
eclipse-indigo
suppress-warnings
knownasilya
источник
источник
Ответы:
Используйте следующее:
@SuppressWarnings({"unused", "unchecked"})
источник
String[] value()
. Списки не имеют специального синтаксиса в Java, но массивы могут быть определены с помощью фигурных скобок.Если вы загляните внутрь аннотации, вы увидите это:
как видите, параметр value является массивом Strings ... поэтому параметр в аннотации может быть: value1, value2 или value3, где
то есть:
вы можете часто видеть что-то вроде
и это частный случай, допускающий один элемент без " {} "
источник