一:
运行期异常(也称为unchecked Exception) 编译器不强制处理的异常,在运行期才处理的异常。
一般因为程序中有错误,需要修改。 往往程序员在写代码的时候不关注这些异常,运行时发生了该异常,都需要修改代码,例如对参数进行非0判断等
二:
编译期异常(也称为检测异常checked Exception)
程序正确,但因为外在的环境条件不满足引发异常 编译器强制要求处理这类异常,如果不捕获这类异常,程序将不能被编译 要捕获编译期异常,一定是try块中显式抛出了该异常
三:区别:
编译期 在编译期强制被处理的异常
运行期 编译期不强制处理,运行期JVM将自动检测抛出