JVM 是如何处理异常的?
Posted 百里浅暮
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JVM 是如何处理异常的?相关的知识,希望对你有一定的参考价值。
在一个方法中如果发生异常,这个方法会创建一个异常对象,并转交给 JVM,该异常对象包含异常名称,异常描述以及异常发生时应用程序的状态。创建异常对象并转交给 JVM 的过程称为抛出异常。可能有一系列的方法调用,最终才进入抛出异常的方法,这一系列方法调用的有序列表叫做调用栈。
JVM 会顺着调用栈去查找看是否有可以处理异常的代码,如果有,则调用异常处理代码。当 JVM 发现可以处理异常的代码时,会把发生的异常传递给它。如果 JVM 没有找到可以处理该异常的代码块,JVM 就会将该异常转交给默认的异常处理器(默认处理器为 JVM 的一部分),默认异常处理器打印出异常信息并终止应用程序。
以上是关于JVM 是如何处理异常的?的主要内容,如果未能解决你的问题,请参考以下文章
浅析JVM是如何处理异常的?finally块必须执行的原理?
浅析JVM是如何处理异常的?finally块必须执行的原理?