为什么Java 8 Stream类可以自动关闭?

在Java 8中,Stream类实现AutoCloseable。这意味着应显式关闭流实例。

我了解为什么文件处理程序和数据库连接是可关闭的。但是为什么要流?

回答:

我认为Stream的当前文档/

javadoc非常清楚:

流具有BaseStream.close()方法并实现AutoCloseable,但是实际上几乎所有流实例在使用后都不需要关闭。通常,只有源是IO通道的流(例如,由Files.lines(Path,Charset)返回的流)才需要关闭。大多数流都由集合,数组或生成函数支持,而无需特殊的资源管理。(如果流确实需要关闭,则可以在try-

with-resources语句中将其声明为资源。)

以上是 为什么Java 8 Stream类可以自动关闭? 的全部内容, 来源链接: utcz.com/qa/415560.html

回到顶部