这不仅仅是字节流。这涉及到任何实施Closeable.
正如文档所述:
调用 close 方法来释放对象所持有的资源(例如打开的文件)。
无论 a 是否Closeable拥有系统资源,经验法则是:不要冒险。.close()正确地执行此操作,您将确保释放此类系统资源(如果有)。
典型的习惯用法(注意InputStreamimplements Closeable):
final InputStream in = whateverIsNeeded;
try {
workWith(in);
} finally {
in.close();
}
Run Code Online (Sandbox Code Playgroud)
在 Java 7 中,您还拥有AutoCloseable(它Closeable实现了)和 try-with-resources 语句,因此:
try (
final InputStream in = whateverIsNeeded;
) {
workWith(in);
}
Run Code Online (Sandbox Code Playgroud)
in这将为您处理关闭。
再次强调:不要冒险。如果您不使用 JDK 7 但可以负担得起 Guava,请使用Closer.
| 归档时间: |
|
| 查看次数: |
2123 次 |
| 最近记录: |