异常介绍Throwable



异常体系结构

在这里插入图片描述

不常见的Error

Stackoverflow OutofmemoryError

常见运行时异常

- ArrayIndexOutOfBoundsException

自定义异常

自定义异常编写

定义一个异常类继承一个异常类,重写构造器
然后再需要异常处理的地方通过throw new 自定义异常

 //set方法中进行处理	
    public void setAge(int age) {

        if (age<120&&age>0) {
            this.age = age;
        }else {
            throw new AgeException("1-120");
        }
    }
    //定义异常类继承异常 重写两个构造方法
    class AgeException extends RuntimeException {
    public AgeException() {
    }

    public AgeException(String message) {
        super(message);
    }
}
     public Student1( int age) {
        setAge(age);
        } 

		//逻辑异常捕获
          catch (Exception e) {
                    System.out.println(e);
                }

异常处理的方式

try-catch

try{
    //需要执行地代码
   }
catch(NullpointException ||ClasscastException  e){
	//可以catch多个异常但是向下走异常范围要更大
	//多个异常可以并行捕获
}
catch(Exception  e){
	//	对异常的处理
}
 finally{
	//无论异常是否出现都会执行(error不行)
}

上抛异常

通过关键字throws向上抛出异常,由调用者自己解决或者再向上抛出异常
throws用于编译时异常
注意:

  • 子类不能抛出比父类更大的异常
  • 当父类中为抽象方法,子类重写,只能try-catch不能上抛

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值