これが間違っていると私を訂正してください:Java 7のtry-with-resourcesステートメントで、リソースのclose()
メソッドによってスローされた例外は、自分のメソッドによってスローされたものとして宣言されなければなりません。 close()
によってスローされた例外。リソースの試用:close()メソッドの例外をスローするかキャッチする必要がありますか?
もしそうなら、私はそれを十分に活用するかどうか疑問に思います。私は確かにthrow
close()
によってスローされた例外にしたくない、呼び出し元はそれで何をするか分からない。そしてtry
は別のtry
をラップしてclose()
を処理するだけでは、少なくとも私にはあまり優雅に見えません。
EDIT:私は誤って2つの質問をしましたが、そのうちの1つは重複していました。
質問1.メソッドがclose()
メソッドから例外をスローするか、try-with-resourcesを別のtryでラップすると宣言する必要がありますか? (提案された複製では答えられません)
質問2.リソースをサイレントに閉じる方法はありますか? (明らかに重複したので、私は問題外その文を取っています。うまくいけば、これは問題が十分にユニークなもの。)
を実現しているあなたは、 '近い()'から投げる多くのリソースを持っていますか? –
ほんの少しですが、私はそれらをたくさん使います(ResultSet、BufferedReader、RandomAccessFile)。 –