我是否需要在Java中关闭InputStream?

时间:2012-03-03 16:49:07

标签: java inputstream

我的代码是:

InputStream confFile=classLoader.getResourceAsStream("myconffile.properties");

在文档中:

  

InputStream的close方法什么都不做。

这是否意味着我不需要关闭InputStream?

2 个答案:

答案 0 :(得分:29)

您确实需要关闭输入Stream,因为您提到的方法返回的流实际上是FileInputStream或其他一些保存文件句柄的InputStream子类。如果您不关闭此流,则会导致资源泄漏。

答案 1 :(得分:20)

不,这并不意味着 - 因为InputStream是一个抽象类,getResourceAsStream()返回一个具体的子类,其close()方法做了一些事情 - 最重要的是释放文件句柄。 / p>