java异常

一、异常的分类


ps:

1)Error是指使程序直接完蛋,没法在运行的问题。Exception是指这样一类问题,当这些问题发生时,虽然会有不好的影响,但是程序还是可以继续运行的。Error是失败,Exception是曲折。

2)CheckedException与RuntimeException的区别:

 CheckedException是外因,RuntimeException是内因。

3)CheckedException在编译时要try一脚,或者是扔出去,RuntimeException要凭借经验增强代码的健壮性,将问题消灭在摇篮里。

 

二、异常产生的原因及处理方法

1、异常产生的原因:方法内部进行了 throw

2、处理意见:try..catch 或者throws。交个上层处理

 

三、Throwable提供的处理异常的方法

1、toString() : 异常对象转成字符串
2、printStackTrace() :打印堆栈信息
3、getMessage() :错误信息


四、声明异常

如下所示:

1) throw:方法内抛出异常。在方法内部相当于return返回值,throw之后如果还有代码不会执行了。
2)throws >=throw 。这里指throw扔出去的东西必须是throws的晚辈,或者一样

 

五、try catch捕获异常

下图说明一个问题 catch  finally块在return之间执行。

这里的意思是is = new 哪行代码执行成功后会先执行finally里的语句,之后执行return。

但是,如果哪行代码出错则会执行catch和finally里的代码

最后如果虚拟机停止运行时不会执行finally里的内容

 

 六、1.7的改进

1、多重捕获:如下图所示。但是,注意多重捕获不能存在继承关系,如果存在会出现编译错误。

2、自动释放资源 :好处可以省略finally块。

如下所示:

 3、智能声明
 

 七、自定义异常

编写一个类 继承 Exception{
 类(){
 }
           类(String msg){
  super(msg)
 }

}

 

 

 

 

 

 

 

 

 

 

 

 

 


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值