私は、閉じなければならないリソースを割り当てたJavaクラスを持っています。私の現在のアプローチは、AutoCloseable
インターフェイスを実装していて、呼び出し側がclose()
を呼び出し、すべてのメソッドのbeginでチェックされたboolean
を追加することを期待しています。をスローすると、true
がスローされます。resouresを閉じるにはどうすればよいですか?
両方とも、呼び出し側がclose()
を呼び出す必要があり、すべてのメソッドの冒頭で閉じていることを確認する必要がありますが、これは避けるためのベストプラクティスですか?
あなたの質問は明確ではありません。明確にしてコードスニペットを共有してください。あなたの問題を理解するのに役立ちます –
"期待しています"クラスを文書化するだけで、基本的に「このクラスを閉じないと、動作は未定義です。ジョブが完了しました。 – fge
私が考えることができる唯一のベストプラクティスは、「あなたがしていることを確認する」ことです。あなたのコードを使用している誰かがそれをしない場合、まあ、それは彼らの問題です。私が追加する唯一のもう一つのことは、「あなたが開いたリソースを閉じてください」です。 –