错误 - 未处理的异常类型异常?

Kor*_*org 2 java exception

我创建了一个抛出异常()的方法.它会导致错误 - 未处理的异常类型异常

public void temp(){
  throw new Exception();
}
Run Code Online (Sandbox Code Playgroud)

但是,如果我用任何其他异常(如NullPointerException)替换Exception,我不会收到任何错误.为什么会这样?

Bla*_*ake 7

这是"已检查"异常与"未经检查"异常之间的区别.任何扩展RuntimeException的东西,包括NullPointerException,都是"未选中"的,这意味着它们不需要通过try/catch显式处理,也不需要声明方法抛出它们.

已检查的异常是那些不扩展RuntimeException的异常,必须通过try/catch或声明方法抛出它来处理.所以你的代码无法编译,因为你没有处理它.