Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果catch块或finally块出现异常,会发生什么?_Java_Exception Handling - Fatal编程技术网

Java 如果catch块或finally块出现异常,会发生什么?

Java 如果catch块或finally块出现异常,会发生什么?,java,exception-handling,Java,Exception Handling,在异常处理中,如果catch块或finally块发生异常,会发生什么?finally块异常将掩盖原始异常 当在catch块或finally块中抛出新异常并将其传播出该块时,当前异常将在新异常向外传播时中止(并被遗忘) 根据JLS 14.20.2检查和以了解更多详细信息。执行try finally和try catch finally 如果catch块由于原因R而突然完成,则执行finally块。还有一个选择: 如果finally块正常完成,那么try语句由于原因R而突然完成 如果finally块由

在异常处理中,如果catch块或finally块发生异常,会发生什么?

finally块异常将掩盖原始异常

当在catch块或finally块中抛出新异常并将其传播出该块时,当前异常将在新异常向外传播时中止(并被遗忘)


根据JLS 14.20.2检查和以了解更多详细信息。执行try finally和try catch finally

如果catch块由于原因R而突然完成,则执行finally块。还有一个选择:

如果finally块正常完成,那么try语句由于原因R而突然完成

如果finally块由于原因S而突然完成,那么try语句由于原因S而突然完成(并且原因R被丢弃)

finally块可能会抛出异常,如果是这样,try或catch块抛出的任何异常都将丢失


Ref:

掩码将比覆盖更好。@JunedAhsan:是的,更正,在这里,您可以找到异常处理中所有抛出异常的情况。为什么不试试呢?实验是最好的老师。