gpt4 book ai didi

嵌套 'finally' block 中的 Java 'try' 子句

转载 作者:行者123 更新时间:2023-12-02 04:55:38 24 4
gpt4 key购买 nike

如果PrintWriter抛出异常,下面的finally子句会被执行吗?

try{
PrintWriter out = new PrintWriter(filename);
try {
//output
} finally {
out.close();
}
} catch {
//handle exception
}

如果PrintWriter抛出异常,那么嵌套的try block 将永远不会被执行,但为什么嵌套的finally子句仍然会被执行执行,即使它是嵌套和跳过的?

更新:我进行了一些测试,如果在嵌套的 try 子句之前抛出异常,则嵌套的 finally 将不会被执行。如果在嵌套的try子句中抛出异常,则将执行内部finally和外部catch

最佳答案

否,因为之前发生异常时不会到达内部 try block ,因此也不会到达finally block 。

关于嵌套 'finally' block 中的 Java 'try' 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59643043/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com