При написании метода, скажем, внутри одного из ваших объектов DAO, и вы не хотите, чтобы этот метод принимал определенные входные данные, для обсуждения, скажем, он не допускает нулевые аргументы.Как вы реализуете это, принимая во внимание, что этот метод, вероятно, будет использоваться в будущем новыми членами команды.
То, как я это делаю:
- ВИнтерфейс, я документирую внутри метода javadoc, что аргументы a, b и c не могут быть нулевыми.
- Внутри метода я сначала проверяю нулевые значения, и если какие-либо из a, b или c равны нулю, тогда я выкидываюIllegalArgumentException.
Но что делать, если какой-нибудь разработчик в будущем просто считывает сигнатуру метода и решает, что он ему нужен, и начинает его использовать, не обращая внимания на эту деталь, и того хужетестирование не показывает этого.Исключение указателя NULL не произойдет, и мы получим полезное сообщение об ошибке, но мы все еще получаем ошибку в работе, которой можно было бы избежать.
Есть ли способ применить это во время компиляции?Я сомневаюсь в этом, но какой самый безопасный и защищенный разработчиком способ сделать это?