Предположим, у вас есть метод с некоторыми предварительными и последующими условиями. Можно ли создать класс исключений для каждого невыполненного предварительного условия? Например: Не выполнение pre1 означает создание экземпляра notPre1Exception.
Если вы сделаете это, убедитесь, что все они наследуются от другого общего пользовательского исключения.
Я бы сказал, что все в порядке, если вы делаете их непроверенными исключениями (подкласс RuntimeException в Java). Однако в Java лучше просто использовать утверждения.