Странный результат от "@SuppressWarnings"
Eclipse предупреждает меня, что локальная переменная randInt может быть не инициализирована (это было). Поэтому я добавил первую строку:
@SuppressWarnings("all")
return randInt;
Предупреждение исчезло, но я получаю две новые ошибки в первой строке: синтаксическая ошибка: вставьте "enum Identifier" для завершения EnumHeaderName и синтаксическую ошибку: вставьте "EnumBody" для завершения BlockStatement
Что на земле? На удивление трудно найти информацию о @SuppressWarnings. Есть ли более точный способ избавиться от этого конкретного предупреждения, чем использовать "все"?
Минимальный, полный, проверяемый пример:
public class SuppressTest {
public int cut() {
int randInt = 0;
@SuppressWarnings("all")
return randInt;
}
}
1 ответ
Вы не можете вставить @SuppresWarnings
в ответном заявлении. В Java 8 вы можете аннотировать только классы, методы / конструкторы, поля, параметры и (новые в Java 8) локальные переменные.
Так что в вашем случае Java не может разобрать то, что вы написали. Переместить @SuppressWarnings
на уровне метода.