- добавляет дополнительную проверку во время выполнения. Я не хочу этого. Мне просто нужна статическая проверка во время компиляции.
Код: Выделить всё
@NonNull - заставляет получателя значения проверять наличие значений NULL. Нет, спасибо. Дело в том, что отправитель значения вообще не отправляет значение null.
Код: Выделить всё
@CheckForNull - из javax.validation.constraints, похоже, не всегда работает. Проверки одного и того же класса допустимы, но проверки при передаче null из другого класса пропускают null. (см. пример ниже)
Код: Выделить всё
@NotNull
Код: Выделить всё
package common.utils;
import javax.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.experimental.FieldDefaults;
@AllArgsConstructor
@FieldDefaults(makeFinal = true, level = lombok.AccessLevel.PRIVATE)
public class MyClass {
@NotNull
MyOtherClass mMyOtherClass;
}
Код: Выделить всё
package common.utils;
public class MyOtherClass {
}
Код: Выделить всё
package common.utils.results;
import common.utils.MyClass;
public class MyClassTest {
public void test() {
new MyClass(null);
Подробнее здесь: [url]https://stackoverflow.com/questions/78505557/is-there-any-not-null-annotation-that-does-the-actual-job[/url]