Если вы используете Groovy 3, вы можете использовать @NullCheck
аннотацию, которая добавляет аргументы конструктора защитных условий (или любых методов).
import groovy.transform.NullCheck
@NullCheck
class MyClass {
private final String foo
private final Integer bar
MyClass(String foo, Integer bar) {
this.foo = foo
this.bar = bar
}
}
// Examples:
new MyClass("test", null) // throws IllegalArgumentException("bar cannot be null")
new MyClass(null, "test") // throws IllegalArgumentException("foo cannot be null")
Когда вы добавляете @NullCheck
на уровне определения класса защитная нулевая проверка будет применена ко всем конструкторам и методам. Кроме того, вы можете добавить @NullCheck
аннотацию к методам (или конструкторам), для которых вы хотите использовать только эту нулевую проверку.
До Groovy 3 такие защитные проверки должны быть реализованы вручную.