在Java中,要在catch塊中重新拋出異常,可以使用throw
關鍵字,并提供要拋出的異常對象
public class Example {
public static void main(String[] args) {
try {
// 這里可能會拋出一個異常
int result = riskyOperation();
} catch (Exception e) {
System.err.println("發生異常: " + e.getMessage());
// 重新拋出異常
throw e;
}
}
private static int riskyOperation() throws Exception {
// 這里只是一個示例,實際上可能會執行一些有風險的操作
if (Math.random() < 0.5) {
return 42;
} else {
throw new Exception("隨機異常");
}
}
}
在這個示例中,我們首先嘗試調用riskyOperation()
方法。如果該方法拋出異常,我們將在catch塊中捕獲它。然后,我們打印一條錯誤消息,并使用throw
關鍵字重新拋出相同的異常。這將導致調用者處理這個異常,或者繼續向上傳遞,直到找到合適的異常處理程序。