认证0级讲师
一番外側の close() を直接呼び出すだけです
更新:
http://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html#close--
ストリームを閉じ、それに関連付けられているシステム リソースを解放します
http://docs.oracle.com/javase/8/docs/api/java/io/InputStreamReader.html#close--
これはチェーンです。最も外側のチェーンを閉じ、最も外側のチェーンが内側のチェーンを閉じ、内側のチェーンが内側のチェーンを閉じます。
もちろん、シャットダウンが失敗する可能性があると主張する場合は、最終的には実行する必要があります。
質問が次のような場合: BufferedReader が閉じられていますが、InputStreamReader と InputStream を閉じる必要がありますか? なら、この問題は正常です...
Java の io パッケージのストリームとリーダーは両方ともデコレータ パターンを使用します。最も外側のデコレータの close メソッドを呼び出すだけで、デコレータが装飾するストリームまたはリーダーも閉じられます。
これが機能しない場合は、BufferedReader のソース コードを開いて、close メソッドを確認してください。
BufferedReader
どんなに難しくても、あなたの疑問を解決できるかもしれない次の記事をお勧めします。「Java IO: ストリームとそのデコレータ パターンの適用」
すべてを 1 つずつ順番に、できれば最後に閉じる必要があります
最初に作成された最後のレベル、最後に作成された最初のレベル
一番外側の close() を直接呼び出すだけです
更新:
http://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html#close--
http://docs.oracle.com/javase/8/docs/api/java/io/InputStreamReader.html#close--
これはチェーンです。最も外側のチェーンを閉じ、最も外側のチェーンが内側のチェーンを閉じ、内側のチェーンが内側のチェーンを閉じます。
もちろん、シャットダウンが失敗する可能性があると主張する場合は、最終的には実行する必要があります。
質問が次のような場合: BufferedReader が閉じられていますが、InputStreamReader と InputStream を閉じる必要がありますか? なら、この問題は正常です...
Java の io パッケージのストリームとリーダーは両方ともデコレータ パターンを使用します。最も外側のデコレータの close メソッドを呼び出すだけで、デコレータが装飾するストリームまたはリーダーも閉じられます。
これが機能しない場合は、
で装飾されているリーダーが閉じられていることがわかります。BufferedReader
のソース コードを開いて、close メソッドを確認してください。どんなに難しくても、あなたの疑問を解決できるかもしれない次の記事をお勧めします。「Java IO: ストリームとそのデコレータ パターンの適用」
すべてを 1 つずつ順番に、できれば最後に閉じる必要があります
リーリー最初に作成された最後のレベル、最後に作成された最初のレベル