java:自定义异常

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_38750084/article/details/88692014

自定义异常:

package com.***.my.inter.exception;


import com.***.my.inter.constants.EnumAppCode;

/**
 * my系统异常
 */
public class myException extends Exception {
    /**
     * 异常编码,对应EnumAppCode 中的code
     */
    private int code = EnumAppCode.error_other.getCode();
    private String message = EnumAppCode.error_other.getMessage();

    /**
     * 生成异常信息
     */
    public myException() {
    }

    /**
     * 生成异常信息
     * @param enumAppCode
     */
    public myException(EnumAppCode enumAppCode) {
        this.code = enumAppCode.getCode();
        this.message = enumAppCode.getMessage();
    }

    /**
     * 生成异常信息
     * @param enumAppCode
     */
    public myException(EnumAppCode enumAppCode, Throwable throwable) {
        this.code = enumAppCode.getCode();
        this.message = enumAppCode.getMessage();
        this.initCause(throwable);
    }

    /**
     * 生成异常信息
     * @param enumAppCode
     */
    public myException(EnumAppCode enumAppCode, String message) {
        this.code = enumAppCode.getCode();
        this.message = message;
    }

    /**
     * 生成异常信息
     * @param enumAppCode
     */
    public myException(EnumAppCode enumAppCode, String message, Throwable throwable) {
        this.code = enumAppCode.getCode();
        this.message = message;
        this.initCause(throwable);
    }

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }

    @Override
    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

用到枚举:

package com.huayong.bi.inter.constants;

public enum EnumAppCode {

    error_other(-1,"异常","如未识别出异常,默认为-1"),
    illegal_operaton(00001,"不支持操作","不支持操作");
    private int code ;
    private String message ;
    private String des ;

    EnumAppCode(int code, String message, String des) {
        this.code = code;
        this.message = message;
        this.des = des;
    }

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public String getDes() {
        return des;
    }

    public void setDes(String des) {
        this.des = des;
    }
}

测试:

也可以直接方法名后 抛出 

猜你喜欢

转载自blog.csdn.net/weixin_38750084/article/details/88692014