try-with-resources語法

r涤生發表於2024-06-17

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 brtry 語句中初始化。當 try 塊結束時,無論是否發生異常,BufferedReader 都會被自動關閉。catch 塊用於處理任何可能的 IOException

try-with-resources 的好處

  1. 自動關閉資源:資源在使用完畢後會被自動關閉,減少了手動關閉資源的程式碼。
  2. 防止資源洩露:確保資源總是被關閉,避免資源洩露的問題。
  3. 簡潔和可讀性:程式碼更簡潔,可讀性更高,不需要顯式地編寫 finally 塊來關閉資源。