在某些项目中需要自定义新的异常来处理项目中出现的某些问题,自定义异常大部分是以继承其他异常的方式定义的
一般情况下是自定义一个BaseException作为根异常,然后根据业务派生(继承)出其他异常
BaseException需要提供多个构造方法
public class BaseException extends RuntimeException {
public BaseException() {
super();
}
public BaseException(String message, Throwable cause) {
super(message, cause);
}
public BaseException(String message) {
super(message);
}
public BaseException(Throwable cause) {
super(cause);
}
}
一般是照抄RuntimeException
抛出异常时,尽量复用JDK已定义的异常类型;
自定义异常体系时,推荐从RuntimeException派生“根异常”,再派生出业务异常;
自定义异常时,应该提供多种构造方法。