在學java時老師一直強調要用完流要關閉流,但有一個問題我一直沒清楚,就是裝飾流該怎麼個關閉,通常我們是這樣關閉的:
...
FileWriter fw = new FileWriter(fileName);
BufferedWriter bw = new BufferedWriter(fw);
...
fw.close();
bw.close();
...
但我感覺太累贅,既然fw被bw裝飾了,bw關閉的同時是否fw也被關閉呢?
或者fw被關閉了的話,bw是否同時也被關閉,畢竟它們用的是一個流通道。
假如fw,bw都需要被關閉的話,它們關閉的順序有要求嗎?就是關閉的先後
順序改變會有影響嗎。
我還見到一只情況,如果bw是這樣創建的:
...
BufferedWriter bw = new BufferedWriter(new FileWriter(fileName));
...
這樣我們就取不到fw了,怎麼辦?