Throwable has two direct subclasses, Exception and Error. While it's possible to create a new class that extends Throwable directly, this is inadvisable as many applications assume only Exception and Error exist.
More to the point there is no practical benefit to directly subclassing Throwable, as ...