在Java、C#等編程語言中,當你需要在try-catch
塊中傳遞異常信息給上層調用者時,可以使用throw
關鍵字重新拋出異常。這樣,異常會被傳遞給調用堆棧中的上一級方法,直到找到合適的處理程序或者程序崩潰。
以下是一個Java示例,展示了如何在try-catch
塊中傳遞異常信息給上層調用者:
public class ExceptionHandlingExample {
public static void main(String[] args) {
try {
method1();
} catch (Exception e) {
System.out.println("捕獲到異常: " + e.getMessage());
}
}
public static void method1() throws Exception {
try {
method2();
} catch (Exception e) {
System.out.println("在method1中捕獲到異常: " + e.getMessage());
throw e; // 重新拋出異常,讓上層調用者處理
}
}
public static void method2() throws Exception {
throw new Exception("這是一個自定義異常");
}
}
在這個示例中,method2()
拋出一個異常,然后method1()
捕獲這個異常并重新拋出。最后,main()
方法捕獲并處理這個異常。當你運行這個程序時,輸出將顯示異常信息在不同方法之間的傳遞過程。