AutoCloseable インスタンスを報告します。
つまり、try-with-resources が使用可能になる前に使用されていた「try の前/中でリソースを開き、finally で閉じる」スタイルも報告されます。
このインスペクションは、Java 7 以降で開発する際にすべての「安全に閉じられていない」インスペクションを置き換えることを目的としています。
例:
private static void foo() throws IOException {
InputStream profile = Thread.currentThread().getContextClassLoader().getResourceAsStream("/someFile");
System.out.println(profile.read());
}
このインスペクションは、次のオプションを使用して構成できます。
AutoCloseable のサブクラスをリストします。
java.util.stream.Stream が無視対象としてリストに登録されている場合でも、java.nio.file.Files のメソッドである lines()、walk()、list()、find() が返すストリームを報告します。
これらのストリームには、閉じる必要のある関連 I/O リソースが含まれています。
AutoCloseable を返すメソッドで、呼び出されたときに無視すべきものをリストします。
AutoCloseable がメソッド呼び出しの結果である場合に無視するかどうか。
このオプションを有効にすると、ファクトリメソッドの結果も無視されます。
AutoCloseable インスタンスがメソッド呼び出しの引数として渡されたかどうかを報告するかどうか。
このオプションが有効になっている場合、このインスペクションは呼び出されたメソッドでリソースが閉じられていると見なします。
名前に 'close' とAutoCloseable 引数が含まれる finally ブロック内のメソッド呼び出しは無視されません。