Fの範囲は外側のブロックで終わる場合の時間のほとんどは、私が使用finallyブロックを参照してください唯一のことは、私の質問は、ある最終的にリソースを閉じる必要があるのはなぜですか?
FileInputStream f;
try{
f= new FileInputStream("sample.txt");
//something that uses f and sometimes throws an exception
}
catch(IOException ex){
/* Handle it somehow */
}
finally{
f.close();
}
のようなもので、なぜ我々は最終的にそれを閉じる必要があります?
あなたの場合、 'f'のスコープはtryブロックで終了しません。 –
@Oli Charlesworth:これは明らかに読みやすい例です。 –
ファイル参照を作成しても、後で参照できるように、例外がスローされる(またはファイルハンドルが作成される)わけではありません。 –