自定义一个异常类IllegalArgumentException,该类继承Exception类
时间: 2024-06-20 13:04:38 浏览: 10
在Java中,自定义异常类是编程中常见的一种做法,可以帮助你更好地组织代码并传达特定的错误信息。`IllegalArgumentException`是一个预定义的异常类型,但如果你想要创建自己的类似异常,你可以按照以下步骤进行:
1. 创建一个新的类,通常命名为自定义异常名称(如CustomIllegalArgumentException),让它继承自`java.lang.RuntimeException`或`java.lang.Exception`,因为`IllegalArgumentException`是`Exception`的一个子类。如果需要提供更具体的上下文,也可以选择`RuntimeException`作为父类。
```java
public class CustomIllegalArgumentException extends RuntimeException {
// 如果需要提供额外的信息,可以添加构造函数
public CustomIllegalArgumentException(String message) {
super(message);
}
public CustomIllegalArgumentException(String message, Throwable cause) {
super(message, cause);
}
}
```
在这个例子中,我们创建了一个名为`CustomIllegalArgumentException`的类,它有两个构造函数,分别接收一个消息字符串和一个可选的`Throwable`对象。`super(message)`会将提供的`message`传递给`RuntimeException`的构造器。
2. 使用这个异常:在方法或代码块中抛出这个异常,当你认为传入的参数不符合预期或者有其他非法操作时。
```java
public void validateInput(String input) throws CustomIllegalArgumentException {
if (input.isEmpty()) {
throw new CustomIllegalArgumentException("Input cannot be empty");
}
// 更多的验证逻辑...
}
```