在編程中,try-catch
和 finally
塊通常用于處理異常和資源管理
catch
塊。try
塊中拋出的特定異常。你可以為不同類型的異常提供多個 catch
塊。當 try
塊中的異常被拋出時,相應的 catch
塊將被執行。try
塊是否成功完成,或者是否有匹配的 catch
塊,finally
塊都將被執行。下面是一個示例,展示了如何組合使用 try-catch
和 finally
塊:
public class TryCatchFinallyExample {
public static void main(String[] args) {
FileInputStream fis = null;
try {
fis = new FileInputStream("example.txt");
// 在這里處理文件內容
} catch (FileNotFoundException e) {
System.out.println("文件未找到異常: " + e.getMessage());
} catch (IOException e) {
System.out.println("I/O 異常: " + e.getMessage());
} finally {
if (fis != null) {
try {
fis.close();
} catch (IOException e) {
System.out.println("關閉文件時發生異常: " + e.getMessage());
}
}
}
}
}
在這個示例中,我們嘗試打開一個名為 “example.txt” 的文件。如果文件不存在或無法讀取,try
塊中的代碼將拋出異常。相應的 catch
塊將捕獲并處理這些異常。無論是否發生異常,finally
塊都將執行,嘗試關閉文件輸入流。