异常处理:Java中如何捕获、处理和抛出自定义异常?
在Java中,如果你想捕获并处理自定义异常,你需要遵循以下步骤:
- 创建异常类:
首先,你需要创建一个继承自Exception
或者其子类的自定义异常。例如:
// 创建继承自Exception的自定义异常
class MyCustomException extends Exception {
public MyCustomException(String message) {
super(message);
}
}
- 捕获异常:
在可能出现异常的代码块中,使用try-catch
语句块来捕获异常。例如:
public void handleException() {
try {
// 可能抛出自定义异常的代码
int customNumber = 10 / 0; // 这会抛出MyCustomException
// 处理成功的情况
System.out.println("Handling successful.");
} catch (MyCustomException e) {
// 处理自定义异常
System.err.println("Handling MyCustomException: " + e.getMessage());
e.printStackTrace(); // 输出堆栈跟踪,有助于排查问题
}
}
- 抛出异常:
如果在try
块中需要抛出异常,可以直接使用异常类的构造方法来创建新的异常。例如:
public void causeException() {
try {
// 这会引发一个MyCustomException
int customNumber = 10 / "invalid";
// 无法达到预期的情况,因此会抛出自定义异常
throw new MyCustomException("Invalid input for number division.");
} catch (MyCustomException e) {
System.err.println("Caused MyCustomException: " + e.getMessage());
e.printStackTrace();
}
}
这样,你就可以在Java中捕获、处理和抛出自定义异常了。
还没有评论,来说两句吧...