只有在try块中抛出异常时才会执行catch块。
如果抛出异常,则始终在try(-catch)块之后执行finally块。
我的问题是 IF 我在finally块中遇到的异常比如何处理它?????
答案 0 :(得分:7)
这是Java语言规范中一个众所周知的问题/问题,因为如果在finally子句中抛出异常(不在嵌套的try-catch中处理它),原始异常就会丢失。您需要嵌套一个新的try-catch来捕获新的异常,然后在那里进行处理。
答案 1 :(得分:3)
你必须在finally块
中处理异常像
finally{
try
{
///
}
catch(Exception e)
{
///
}
}