可能重复:在finally块中抛出异常
只有在try块中抛出异常时才会执行catch块 .
如果抛出异常,则始终在try(-catch)块之后执行finally块 .
我的问题是 IF 我在finally块中遇到的异常比如何处理它?????
这是Java语言规范中众所周知的问题/问题,因为如果在finally子句中抛出异常(不在嵌套的try-catch中处理它),原始异常就会丢失 . 您需要嵌套一个新的try-catch来捕获新的异常,并在那里处理它 .
你必须处理 Exception in finally block
喜欢
finally{ try { /// } catch(Exception e) { /// } }
2 回答
这是Java语言规范中众所周知的问题/问题,因为如果在finally子句中抛出异常(不在嵌套的try-catch中处理它),原始异常就会丢失 . 您需要嵌套一个新的try-catch来捕获新的异常,并在那里处理它 .
你必须处理 Exception in finally block
喜欢