У меня есть класс с аннотацией ParametersAreNonnullByDefault
javax.Но его конструктор и методы принимают нулевые параметры и не генерируют NullPointerException
.
@ParametersAreNonnullByDefault
class MyClass {
private Integer intField;
public MyClass(Integer intField) {
this.intField = intField;
}
public Integer someMethod(Integer a) {
return a;
}
}
. Следующие строки кода не генерируют NullPointerException, как я ожидал:
MyClass obj = new MyClass(null);
obj.someMethod(null);
Asсогласно документации, «эта аннотация может быть применена к пакету, классу или методу, чтобы указать, что параметры метода в этом элементе не равны нулю по умолчанию».Где и когда выполняется проверка нулевого значения параметров метода с этой аннотацией?