未关闭的流是否会导致 Java 中的内存泄漏?
我相信开放流会导致java中的内存泄漏(至少java 1.6及更早版本确实存在此问题)。
但是,在搜索(甚至在这里)时,我发现有些人同意这一点,而其他人则不同意。所以,如果我写这个程序:
import java.io.*;
public class CreatingMemoryLeak {
public static void main(String args[])
{
String s = "xxxxxxx";
InputStream in = new ByteArrayInputStream(ss.getBytes());
BufferedInputStream bf = new BufferedInputStream(in);
try {
while(bf.read()>0)
{
System.out.println("got it");
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("Here is a input stream " + s +" causing a memory leak");
}
}
如果我没有显式关闭流,它是否会导致内存泄漏?bf