【Java学习】异常

目录

一、异常的处理过程

二、受检查异常

三、异常类的关系


一、异常的处理过程

异常类的似复刻变量 被throw时,会立即中止 当前所在的这层方法,即当层方法里 throw异常类似复刻变量之后的语句 就不会执行了,如果throw异常语句 在当层方法中被try{}包裹,则中止就先发生被包裹在了try{}层,待给后续的 catch选择语句去匹配(用异常类变量引用 去接对应的异常似复刻变量 可有向上转型的)去捕捉进去,中止被捕捉进 就不会再发生中止 且执行完相应的catch语句后 就被毁了,之后再执行 try-catch-finally连着执行捕捉体的 finally语句,最后再执行 此方法里捕捉体系执行完后 剩余的语句,如果后续的catch选择语句 都未有与此异常相匹配捕捉的,捕捉体系捕捉不到 解决不到 此异常,接着的捕捉体系的 finally部分执行完之后,捕捉体系结束 包裹结束,异常还在的 接着中止该方法 并向外继续抛出 抛到再上一层调用此方法 即相当于成了该方法的返回值的 方法里处,继续看 有没有被包裹还是继续抛,如果到了main方法这层时 这层也未能将此异常处理销毁,就会抛到JVM 给JVM去解决销毁,程序此时就是异常终止了 自己没能解决掉这个异常

二、受检查异常

受检查异常的抛出 都是需要经过 方法声明throws的检查下 才可进行抛出的非受检查异常 没有这一抛出检查要求 是直接原类型抛出的 且此受检查异常抛出的 检查要求 对非受检查异常 也是无效),throws检查下 指定抛出后的异常的类型 必须是原来的类型 或原来异常父类的类型,在此检查指定下 受检查异常抛出时 可以发生向上转型,受检查异常 需要显式地写完 其最后能被销毁的全过程(到main方法都一直未销毁掉,一路显式检查到 被JVM销毁 也算)

三、异常类的关系

  • 所有异常类 都有继承Exception父类
  • RuntimeException是一个 非受检查异常类,其它的 所有非受检查异常类的 非受检查性质 就是来源于继承它

评论 45
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值