异常的一些笔记

package 异常;

/*
 * 自定义异常
 * 继承exception 原因 :
 * 异常体系有一个特点,异常类和异常对象都要被抛出,因为他们都具备可抛性
 * 而 这个可抛性是 throwable体系中的独有特点
 * 只有还这个体系中的类和对象才可以被 throws 和 throw 操作
 *
 * throw 用在函数内,后面跟一或多个函数类
 *
 * throw 用在函数上,后面跟函数对象
 *
 * 注  runtimeexception 异常 和它子类的异常 抛出时不需要 try cathc 或者声明
 */
public class TestException {
    public static void main(String[] args) {
        try {
            new Demo().div(2,  1);
        } catch (OwnException e) {
            e.printStackTrace();
        }
    }

}

/**
 * 抛出自定义异常后 对应的方法要么抛出该异常 要么进行 try catch 操作
 */
class Demo {
    void div(int a, int b) throws OwnException {
        if (b < 0) {
            throw new OwnException("wrong");
        }
        if(b>0){
            throw new RuntimeException();
        }
    }
}

// 父类已经把异常信息的 操作都完成了,子类只需要在构造时将异常信息通过 super传给父类就可以了
class OwnException extends Exception {
    // private String msg;
    OwnException(String msg) {
        super(msg);
    }
    // 父类已经有了这个方法 不需要在实现
    /*
     * public String getMessage(){ return msg; }
     */
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值