java,不是抛出异常就不往下面执行了吗?为什么还要执行下面的输出语句?

如题所述

亲,当程序抛出错误才会停止程序的运行,类似于这个样子,
NoSuchMethodError 这是java lang包中的一个异常,当你调用方法,而这个方法不存在时就会抛出这个错误,你想啊,你调用一个不存在的方法,程序还能执行下去吗。当然就停止了。
而异常不同。
举个例子,假如你一个中大型的项目,有一个除数为0的异常,那么如果一有异常程序就无法执行的话,那是不是这样程序就太差劲了。所以说,这个异常处理主要是来维护我们程序中的健壮性的,还可以帮助程序员调错。就是说你的程序不符合正常逻辑时,我们该怎么处理,至于你截的这个图,只是简单的打印了一下堆栈信息,实际项目都不这么做的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-06-02
你得理解 “抛出异常就不往下面执行了”的意思是
:throw 一个异常,throw(才是抛出的意思)
而try{}catch{}是处理被抛出的异常
第2个回答  2013-06-02
亲, try catch 就是扑捉异常让程序继续执行的本回答被提问者采纳
第3个回答  2013-06-02
你把异常处理掉了 当然往下走
相似回答