Exception和Error的异同
Exception和Error都继承了Throwable类,在Java中只有Throwable类型的实例才可以被抛出(throw)或者捕获(catch)
Exception和Error体现了Java平台设计者对不同异常情况的分类。
Exception是程序正常运行中,可以预料的意外情况。
Exception可以分为可检查异常 checked 和 不检查异常 unchecked。
-
可检查异常,在源代码里必须进行显示的捕获处理,这是编译期检查的一部分
-
不检查异常,是指运行时异常,例如NullPointerException, ArrayIndexOutOfBoundsExcep之类。这些异常通常是可以通过在编码的时候避免的。
Error是指在正常情况下,不大可能出现的情况,绝大部分的Error都会导致程序处于非正常,不看回复状态。它不能被捕获,比如OutOfMemoryError。
Throwable、Exception、Error的结构类图
待补充
网友评论