try, catch, finally 結構中finally的作用
在 try catch 結構中, 並非所有的 exception 都能捕捉,
所以如果無論有無 catch 到錯誤, 都必須執行的程序,
可以將它放在 finally 裡面, 這樣就不用擔心, 因 catch 沒
有捕獲錯誤, 而漏掉一定要執行的部分.
例如:
try {
writer.open; something.... } catch (IOException e) { e.printStackTrace(); }finally { try { writer.close(); } catch (IOException e) { e.printStackTrace(); } }
將writer.close() 置於 finally 可確保有無錯誤發生,
也無論有無 catch 到錯誤, 都能保證 writer 能被 close.