try-with-resources語法
try-with-resources
是 Java 7 引入的一種語法結構,用於簡化資源管理。資源在使用完畢後會自動關閉,避免了手動關閉資源的麻煩和潛在的資源洩露問題。資源是指任何實現了 java.lang.AutoCloseable
介面的物件,例如檔案輸入輸出流、資料庫連線等。
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class TryWithResourcesExample {
public static void main(String[] args) {
// 使用 try-with-resources 語句
try (BufferedReader br = new BufferedReader(new FileReader("example.txt"))) {
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
BufferedReader br
在 try
語句中初始化。當 try
塊結束時,無論是否發生異常,BufferedReader
都會被自動關閉。catch
塊用於處理任何可能的 IOException
。
try-with-resources
的好處
- 自動關閉資源:資源在使用完畢後會被自動關閉,減少了手動關閉資源的程式碼。
- 防止資源洩露:確保資源總是被關閉,避免資源洩露的問題。
- 簡潔和可讀性:程式碼更簡潔,可讀性更高,不需要顯式地編寫
finally
塊來關閉資源。