Я проверяю аргументы конструктора и метода, так как хочу, чтобы программное обеспечение, особенно его модель, быстро проваливалось.
В результате код конструктора часто выглядит следующим образом
public MyModelClass(String arg1, String arg2, OtherModelClass otherModelInstance) {
if(arg1 == null) {
throw new IllegalArgumentsException("arg1 must not be null");
}
// further validation of constraints...
// actual constructor code...
}
Есть ли способ сделать это с помощью подхода, основанного на аннотациях? Что-то вроде:
public MyModelClass(@NotNull(raise=IllegalArgumentException.class, message="arg1 must not be null") String arg1, @NotNull(raise=IllegalArgumentException.class) String arg2, OtherModelClass otherModelInstance) {
// actual constructor code...
}
В моих глазах это сделало бы реальный код намного более читабельным.
В понимании, существуют аннотации для поддержки проверки IDE (например, существующая аннотация @NotNull).
Большое спасибо за вашу помощь.