发现一个挺有意思的问题,为什么上面的异常不需要处理,但是下面的异常需要处理呢?
不需要处理
需要处理
Exception分为运行时异常(RuntimeException及其子类)和非运行时异常(Exception子类中,除了RuntimeException及其子类之外的类)非运行时异常是需要捕获处理的
因为上面一个是RuntimeException(运行期异常),下面一个不是,运行期异常只有运行时才能知道,所以不需要显式捕获,非运行期异常是可预知的异常,要么继续往上抛出,要么就要显示捕获