gpt4 book ai didi

java - 关闭、析构和终结 : Java contradictions

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:39:04 26 4
gpt4 key购买 nike

<分区>

我有以下代码,它在我的类里面逐行读取文件时效果很好。

 try {  FileInputStream in = new FileInputStream(filename);
BufferedReader reader=new BufferedReader(new InputStreamReader(in));
String line;
while((line=reader.readLine())!=null){
// read the file
}
}
catch (Exception e) {
System.out.println(e);
}

但是如果我尝试添加命令close,因为在文件完成读取之后,我得到了错误:

    in.close();

Error:(131, 9) java: cannot find symbol
symbol: variable in
location: class ReadFile

我搜索了使用后清理对象以及在程序结束前关闭文件的需要。并找到了几篇关于 Java 的帖子,但很多都是非常矛盾的。关键是最后我变得非常困惑。

是我错了,还是 Java 编程有点模糊和困惑?我的意思是,destructor 显然没有实际用途。 , 使用finalize很值得怀疑,close的使用也被认为是不必要的。关于这些问题的一些帖子是矛盾的且没有定论。

那么,这里该如何进行呢?在我真的需要关闭文件的情况下,如何摆脱这个错误信息?关闭文件真的可有可无吗?如何为程序完成清理类实例?

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