В java-прилагательных, заканчивающихся на -able, есть интерфейсы Serializable
, Comparable
и т.д. Итак, почему Throwable
класс? Разве исключение не было бы проще, если Throwable
был интерфейсом? (Редактировать: например, классам исключений не нужно расширять исключение/исключение RuntimeException.)
Очевидно, что изменение этого вопроса сейчас не в этом. Но можно ли это сделать абстрактным? Разве это не позволит избежать плохой практики throw new Throwable()
;