在Java中,處理異常情況主要通過使用try-catch語句。當方法中可能出現異常時,可以將可能拋出異常的代碼放在try塊中。如果在try塊中的代碼執行過程中拋出了異常,程序會立即跳轉到與該異常類型匹配的catch塊中執行。以下是一個簡單的示例:
public class ExceptionHandlingExample {
public static void main(String[] args) {
try {
int result = divide(10, 0);
System.out.println("Result: " + result);
} catch (ArithmeticException e) {
System.out.println("Error: " + e.getMessage());
}
}
public static int divide(int a, int b) throws ArithmeticException {
if (b == 0) {
throw new ArithmeticException("Division by zero is not allowed.");
}
return a / b;
}
}
在這個示例中,divide
方法可能會拋出ArithmeticException
異常(當除數為0時)。我們在main
方法中使用try-catch語句來調用divide
方法并處理可能的異常。如果divide
方法拋出異常,程序會跳轉到與ArithmeticException
匹配的catch塊中執行,輸出錯誤信息。
除了處理特定類型的異常外,還可以使用多個catch塊來處理不同類型的異常,或者在catch塊中拋出新的異常。此外,可以使用finally塊來執行無論是否發生異常都需要執行的代碼,例如關閉文件或釋放資源。