自动关闭作为参数传递的资源

丹尼尔:

如果我想自动关闭作为参数传递的资源,有没有更好的解决方案比这个?

void doSomething(OutputStream out) {

  try (OutputStream closeable = out) {
    // do something with the OutputStream
  }
}

理想情况下,我想有这样的资源自动关闭,不宣而另一个变量closeable是指同一个对象out

在旁边

我认识到,关outdoSomething被认为是一种不好的做法

马克Rotteveel:

在Java 9和更高版本,你可以做

void doSomething(OutputStream out) {
  try (out) {
    // do something with the OutputStream
  }
}

这如果只允许out为最终或有效决赛。另见Java语言规范的版本10 14.20.3。尝试-与资源

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章