自定义异常

了解手动抛出异常对象和自动抛出

  • throw new 异常类的对象
  • throws 异常类对象,

两者区别

  • throw 在方法中用
  • throws在声明时用

使用场景

多个方法并列,可以使用throw

自定义异常

  • 继承于现有的异常体系。通常继承于RuntimeException \ Exception
  • 通常提供几个重载的构造器
  • 提供一个全局常量,声明为:static final long serialVersionUID;

如果继承RuntimeException运行时异常,则方法中可以这样用,

class Student{
    int id;

    public void regist(int id){
        if (id > 0){
            this.id = id;
        }else{
            // 手动抛出异常类对象
//            throw new RuntimeException("错误");
            throw new BelowZeroException();
        }


    }
}

public class BelowZeroException extends RuntimeException{

}

如果继承的不是运行时异常,则方法也要throws,

   public void regist(int id) throws Exception{
        if (id > 0){
            this.id = id;
        }else{
            // 手动抛出异常类对象
//            throw new RuntimeException("错误");
            throw new BelowZeroException();
        }


    }

public class BelowZeroException extends Exception{

}

  • 9
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值