在Java中,try關鍵字用于啟動異常處理機制,通常與catch和finally關鍵字一起使用。try塊用于封裝可能會拋出異常的代碼塊,如果try塊中的代碼拋出了異常,程序會跳轉到與異常匹配的catch塊進行異常處理。finally塊用于執行無論是否發生異常都需要執行的代碼。
try-catch-finally的基本結構如下所示:
try {
// 可能會拋出異常的代碼塊
} catch (Exception e) {
// 異常處理邏輯
} finally {
// 無論是否發生異常都需要執行的代碼塊
}
try塊中的代碼塊可能會拋出不同類型的異常,catch塊可以捕獲不同類型的異常并進行相應的處理。finally塊中的代碼總是會被執行,無論是否發生異常。通常用于釋放資源、關閉文件等操作。
在Java 7中引入了try-with-resources語句,用于自動關閉實現了java.lang.AutoCloseable接口的資源。例子如下:
try (BufferedReader br = new BufferedReader(new FileReader("file.txt"))) {
String line = br.readLine();
System.out.println(line);
} catch (IOException e) {
e.printStackTrace();
}
在這個例子中,try-with-resources語句會在try塊結束后自動關閉BufferedReader對象,無需在finally塊中手動關閉資源。