目录
异常处理的任务:将控制权从错误产生的地方转移到能够处理这种异常的错误处理器
error
error 指程序无法恢复的异常情况
Exception
如果程序运行正常,从不会发生的情况。指程序有可能恢复的异常情况
Java的异常(包括Exception和Error)分为受检的异常(checked exceptions)和不受检的异常(unchecked exceptions)。
运行时异常(不受检的异常)
都是RuntimeException类及其子类异常,如NullPointerException(空指针异常)、IndexOutOfBoundsException(下标越界异常)等,这些异常是不检查异常,程序中可以选择捕获处理,也可以不处理。这些异常一般是由程序逻辑错误引起的,不处理会编译通过。
非运行时异常 (编译异常,受检异常)
是RuntimeException以外的异常,类型上都属于Exception类及其子类。从程序语法角度讲是必须进行处理的异常,如果不处理,程序就不能编译通过。如IOException、SQLException等以及用户自定义的Exception异常,一般情况下不自定义检查异常。