gpt4 book ai didi

java - Netbeans 中的 "Convert to try-with-resources"- Cool Beans?

转载 作者:搜寻专家 更新时间:2023-10-30 21:46:10 24 4
gpt4 key购买 nike

我在 Netbeans 7.1.2 中有以下代码:

BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(filename));
bos.write(newRawData);
bos.close();

警告提示我“转换为 try-with-resources”。当我选择这样做时,我的代码变为:

try (BufferedOutputStream bufferedFos = new BufferedOutputStream(new FileOutputStream(filename))) {
bufferedFos.write(newRawData);
}

这看起来类似于 C# 中 using(...) 的语法...它们的工作方式相同吗?使用第二种格式有什么缺点吗?我担心 bos.close(); 的缺失,但这种格式是否根本没有必要?

最佳答案

这是 Java 7 中引入的新语法,它负责关闭您在声明 try(...) 语句时指定的任何资源。可以找到更多信息 here .
所以不,您不必执行 bos.close(),它由 Java 执行。您可以高枕无忧。
唯一的缺点是您的代码仅适用于 Java 7+。

关于java - Netbeans 中的 "Convert to try-with-resources"- Cool Beans?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11440592/

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