JAVA基础总结(六)之异常总结

异常(Exception)
描述

JAVA中的异常都继承自java.lang.Throwable
异常关系 :在这里插入图片描述

异常分类
  • 检查型异常
    如果开发者没有去处理这些异常则会报错,除了error.runtingException以外的异常都叫检查型异常
  • 非检查型异常 Error,RuntingException异常.如上图.
    编译器不会报错,可能会报错。但是没有去处理报的异常。
异常处理方法
  • try catch
    在这里插入图片描述
  • throw -----抛出异常
    在这里插入图片描述
检查型异常

需要手动抛出的异常为检查型异常。例如上图必须抛出的异常
编译器要求必须处置的异常

异常处理–非检查型异常

不用去处理他,可能会抛出异常类。为非检查型异常
编译器不要求强制处置的异常

场景
  • 常见的空指针异常
  • 死循环
  • 内存不够

finally

  • try 或者 catch 正常执行后, 一般会执行finally的代码
  • 如果在执行try或者catch的过程中,jvm被杀死或者进程终止。finally可能不会执行
  • 程序被return,brean停止后,都会执行finally方法
try(

}catch(){

}finall6{

}

try{

   }finally{

 
 }

throws

throws流程

如果使用了throws抛出异常,则会吧产生异常的方法抛给上一个方法。上一个方法如果不处理。继续throw抛出。则继续抛给上一个方法。最后都不处理则抛给JVM.
在这里插入图片描述

自定义异常

  • 开发中自定义异常都是只有两种写法,一种继承与Exception,RuntimeException
    • 继承自Exception是用起来会复杂,希望开发者重视这个异常并且认真处理
    • Runtime使用起来会简洁,不严格要求开发者去处理这个异常

使用异常的好处

  • 将错误的代码与普通的代码区分开
  • 当发生错误时,程序不至于崩溃。
  • 当发生错误时,可以在短时间内找到错误所在行,能节省时间。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值