如果未能捕获Exception
的子类,Eclipse将发出编译警告(红色)。
但是,当Error
的子类未被捕获时,不会发出警告,因此很容易忘记包含throws SomethingError
语句。
答案 0 :(得分:2)
这是checked(不包括RuntimeException的Exception的子类)和未经检查的异常(RuntimeException或Error的子类)之间的区别。
答案 1 :(得分:1)
这主要是为了避免必须将异常处理代码添加到您编写的每个简单代码行中。这个问题非常好地解释了:Why are Runtime Exceptions "unchecked" in Java?