All exception classes are subtypes of the java.lang.Exception class. The exception class is a subclass of the Throwable class and Throwable is a type of Object. Other than the exception class there is another subclass called Error which is also derived from the Throwable class.

Info

In Java, exceptions that are subclasses of Error and RuntimeException are unchecked exceptions. Everything else under Throwable (that is, exceptions that are subclasses of Exception but not RuntimeException) are checked exceptions.


Reference: