要定义自定义的编译时异常,需要创建一个继承自java.lang.Exception
类的子类,并重写toString()
方法来提供异常信息。
以下是一个自定义编译时异常的示例:
public class MyCustomException extends Exception {
private int errorCode;
private String errorMessage;
public MyCustomException(int errorCode, String errorMessage) {
this.errorCode = errorCode;
this.errorMessage = errorMessage;
}
@Override
public String toString() {
return "MyCustomException{" +
"errorCode=" + errorCode +
", errorMessage='" + errorMessage + '\'' +
'}';
}
}
然后,你可以在代码中使用throw
语句抛出自定义异常。例如:
public class Test {
public static void main(String[] args) {
try {
process();
} catch (MyCustomException e) {
System.out.println(e.toString());
}
}
public static void process() throws MyCustomException {
// 模拟抛出自定义异常
throw new MyCustomException(500, "自定义异常信息");
}
}
在上面的例子中,process()
方法模拟抛出了自定义异常MyCustomException
,并且在main()
方法中使用try-catch
块来捕获和处理这个异常。
可以根据自己的需要在自定义异常类中添加其他属性和方法,例如,可以添加getErrorCode()
和getErrorMessage()
来获取异常的错误代码和错误信息。