【发布时间】:2021-10-04 16:32:10
【问题描述】:
FileOutputStream st = null;
for(file_path:file_list)
{
st = new FileOutputStream(file_path);
.
.
.
}
st.close();
我想知道的是 如果我没有关闭一个流并使用新实例对其进行初始化,是否会影响程序性能?
如果是这样,是不是因为最后一行的close()只关闭了最后创建的流,而之前的其他流都在等待GC清除自己?
提前感谢您的阅读。
【问题讨论】:
-
老兄——总是“关闭”你“打开”的东西!否则可能会发生不好的事情:乱码/截断数据,潜在的资源泄漏等。另外:您应该熟悉 Java try-with-resources 块。
标签: java performance io