RuntimeException
s как IllegalArgumentException
используются для указания ошибок программирования . Сама программа должна редко справляться с этим. Кто-то должен вручную исправить код.
Потенциал RuntimeException
s должен быть задокументирован каким-либо образом в контракте функций (т.е. в javadoc), либо с явным @throws
, либо при описании входных данных. Если у вас нет javadoc для этой функции, вы можете добавить предложение throws, чтобы просто документировать потенциальные ловушки при использовании функции, но в целом добавление предложений throws для исключений времени выполнения не рекомендуется.
Если указание неправильной длины на самом деле не является ошибкой программирования, а является исключительной ситуацией, я бы создал новое проверенное исключение (например, BadLengthError). Если это не исключительная ситуация, не используйте исключения для управления потоком.