You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

所有try语句是否都存在隐式finally块?还是仅try-with-resources才有?

Java try语句与隐式finally块的疑问解答

问题1:除try-with-resources语句外,其他try语句是否会应用隐式finally块?

不会。普通的try、try-finally、try-catch-finally语句里不存在隐式finally块——如果需要执行收尾逻辑,必须显式编写finally代码块才能触发对应的逻辑。

问题2:隐式finally块是存在于所有try语句中,还是仅存在于try-with-resources语句中?

仅存在于try-with-resources语句中。当你使用try-with-resources声明实现了AutoCloseable接口的资源时,编译器会自动生成一个隐式的finally块,用于在代码执行完毕后自动调用资源的close()方法,无需开发者手动编写finally来关闭资源。而其他类型的try语句,完全依赖开发者显式添加finally块来处理收尾工作。

内容的提问来源于stack exchange,提问作者bridgemnc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 16:38:12