Throwable可以用来表示任何可以作为异常抛出的类,分为两种:Error和Exception。其中Error用来表示JVM无法处理的错误,
Exception又分为两种:
- 受检异常:需要用try...catch...语句捕获并进行处理,并且可以从异常中恢复,受检异常是编译器要求处理的异常(除了RuntimeException及其子类以外其他的Exception及其子类);
- 非受检异常:是程序运行时异常,非受检异常为编译器不要求强制处理的异常(包括RuntimeException及其子类和Error)。