In java adjectives ending in -able are interfaces Serializable
, Comparable
etc... So why is Throwable
a class? Wouldn't exception handling be easier if Throwable
were an interface? (Edit: e.g. Exception classes don't need to extend Exception/RuntimeException.)
Obviously, changing it now is out the question. But could it be made abstract? Wouldn't that avoid the bad practice of throw new Throwable()
;