多态与异常处理动手动脑

一、请阅读并运行AboutException.java示例

运行结果截图:

二、辨析:finally语句块一定会执行吗?

答:在不终止VM的情况下,finally中的代码一定会执行。

SystemExitAndFinally.java运行结果截图:

    因为System.exit(),让我们看一下API中的说明:exit(int status): Terminates the currently running Java Virtual Machine。原来是这样,JVM都被终止掉了,当然不会再执行finally中的语句了。所以只要是在不终止VM的情况下,finally中的代码一定会执行。

三、PrintExpressionStack.java示例

运行结果截图:

Java多层嵌套异常处理的基本流程:

第一、调用异常的对象的printStackTrace()方法,打印方法调用栈的异常信息。

第二、如果出现异常的线程为主线程,则整个程序运行终止;如果非主线程,则终止该线程,其他线程继续运行。

四、ThrowMultiExceptionsDemo.java示例

运行结果截图:

五、OverrideThrows.java示例

运行结果截图:

六、ExceptionLinkInRealWorld.java示例

运行结果截图 :

原文地址:https://www.cnblogs.com/dawn-sky/p/4966232.html