我创建了一个抛出异常()的方法.它会导致错误 - 未处理的异常类型异常
public void temp(){
throw new Exception();
}
Run Code Online (Sandbox Code Playgroud)
但是,如果我用任何其他异常(如NullPointerException)替换Exception,我不会收到任何错误.为什么会这样?
这是"已检查"异常与"未经检查"异常之间的区别.任何扩展RuntimeException的东西,包括NullPointerException,都是"未选中"的,这意味着它们不需要通过try/catch显式处理,也不需要声明方法抛出它们.
已检查的异常是那些不扩展RuntimeException的异常,必须通过try/catch或声明方法抛出它来处理.所以你的代码无法编译,因为你没有处理它.
| 归档时间: |
|
| 查看次数: |
7659 次 |
| 最近记录: |