Среда проверки: подавление предупреждений в конструкторе по умолчанию
У меня есть два конструктора: обычный ctor, который правильно инициализирует объект, и второй ctor по умолчанию для Hibernate, который генерирует предупреждения полей инициализации. Какой предпочтительный способ избавиться от предупреждений?
package test;
public class Example {
String x;
public Example(String x) {
this.x = x;
}
Example() {
// Ctor for Hibernate, warnings generated here.
}
}
1 ответ
Вы не упомянули просмотр документации, поэтому я не уверен, что вы это сделали. Руководство по Checker Framework содержит главу "Подавление предупреждений", которая может содержать всю необходимую информацию.
Наиболее распространенным подходом является написание аннотации @SuppressingWarnings, которая является стандартным способом подавления предупреждений компилятором Java.
Вы должны записать его на наименьшем возможном элементе программы (таком как объявление локальной переменной, а не на весь конструктор или класс), и вы должны предоставить максимально конкретный ключ. Причина в том, чтобы избежать случайного подавления большего количества предупреждений, чем вы предполагали.