DRAFT
Observed
Exception is the top-most exception class
Throwable is the top-most exception class
The the root of the exception class hierarchy is class java.lang.Throwable. This class has two subclasses: java.lang.Error and java.lang.Exception.
A throw statement can throw any object o where o instanceof Throwable.
A catch clause can catch any object o where o instanceof Throwable.
The throws clause in a method signature can include any type that is Throwable or a subtype of Throwable.
