AutoCloseable
はjdk1.7で導入され、Cloesable
すでにjdk1.5に含まれています。
そしてhttps://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.htmlによると
try-with-resources ステートメントは、各リソースがステートメントの最後で確実に閉じられるようにします。java.io.Closeable を実装するすべてのオブジェクトを含む、java.lang.AutoCloseable を実装するすべてのオブジェクトをリソースとして使用できます。
したがって、インスタンスはすでにステートメントCloseable
でリソースとして扱うことができます。から拡張されtry-with-resources
ているため、これは確かです。Closeable
AutoCloseable
私の質問は、なぜ Java が を特別に導入AutoCloseable
するのか、なぜ Closeable のみをサポートするようにしないtry-with-resources
のか、AutoCloseable を 以外に使用する方法はありますtry-with-resources
か?