自定义异常类Exception


/**
 * 业务异常
 *
 */
public final class ServiceException extends RuntimeException {
    private static final long serialVersionUID = 1L;

    /**
     * 错误码
     */
    private Integer code;

    /**
     * 错误提示
     */
    private String message;

    /**
     * 错误明细,内部调试错误
     */
    private String detailMessage;

    /**
     * 空构造方法,避免反序列化问题
     */
    public ServiceException() {
    }

    public ServiceException(String message) {
        this.message = message;
    }

    public ServiceException(String message, Integer code) {
        this.message = message;
        this.code = code;
    }

    public String getDetailMessage() {
        return detailMessage;
    }

    public String getMessage() {
        return message;
    }

    public Integer getCode() {
        return code;
    }

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

    public ServiceException setDetailMessage(String detailMessage) {
        this.detailMessage = detailMessage;
        return this;
    }
}

好的,我可以为您介绍如何自定义一个名为 PasswordException 的异常。 在 Python 中,自定义异常需要继承自内置的 Exception ,然后可以在中添加自己的属性和方法。下面是一个示例代码: ```python class PasswordException(Exception): def __init__(self, message="Invalid password."): self.message = message super().__init__(self.message) ``` 在上面的代码中,我们定义了一个名为 PasswordException 的异常,它继承自 Exception 中包含了一个 message 属性,用于存储异常信息。在的构造函数中,我们可以通过传递不同的 message 参数来自定义异常信息。 现在我们可以使用这个自定义的异常来抛出异常,如下所示: ```python def check_password(password): if len(password) < 8: raise PasswordException("Password is too short.") elif not any(char.isdigit() for char in password): raise PasswordException("Password must contain at least one digit.") elif not any(char.isupper() for char in password): raise PasswordException("Password must contain at least one uppercase letter.") else: print("Valid password.") ``` 在上面的代码中,我们定义了一个名为 check_password 的函数,它接受一个密码作为输入,并检查密码是否符合一些规则。如果密码不符合规则,我们可以使用我们自定义的异常 PasswordException 来抛出异常,并指定相应的错误信息。 希望这个示例可以帮助您自定义自己的异常
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值