Java自定义异常

当开发时,项目中出现了java中没有定义过的问题时,这时就需要我们按照java异常建立思想,将项目的中的特有问题也进行对象的封装。这个异常,称为自定义异常。

一般地,用户自定义异常类都是RuntimeException的子类。

自定义异常类通常需要编写几个重载的构造器。

自定义的异常类对象通过throw抛出。

自定义异常最重要的是异常类的名字,当异常出现时,可以根据名字判断异常类型。

 

自定义异常的步骤:

1)定义一个子类继承Exception或RuntimeException,让该类具备可抛性。

2)通过throw 或者throws进行操作。

 

示例:自定义异常类MyException,用于描述数据取值范围错误信息。自定义异常类必须继承现有的异常类。

public class TestMyException {
    public void regist(int num) throws MyException {
        if (num < 0)
            throw new MyException("人数为负值,不合理", 3);
        else
            System.out.println("登记人数" + num);
    }
    public void manager() {
        try {
            regist(-1);
        } catch (MyException e) {
            System.out.println("登记失败,出错种类" + e.getId());
        }
        System.out.println("本次登记操作结束");
    }
    public static void main(String[] args) {
        TestMyException t = new TestMyException();
        t.manager();
    }
}
class MyException extends Exception {
    static final long serialVersionUID = 1L;
    private int idnumber;
    public MyException(String message, int id) {
        super(message);
        this.idnumber = id;
    }
    public int getId() {
        return idnumber;
    }
}

执行结果:

登记失败,出错种类3
本次登记操作结束

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值