关于java异常你需要初步了解的东西

1、catch语句有多个,用来匹配多个中的一个异常,一旦匹配上后就不再尝试匹配别的catch;

2、finally总会在方法返回前执行;

3、try、catch、finally三个代码块中变量的作用域为代码块内部,分别独立而不能相互访问,如果要在三个块中都可以访问,则需要将变量定义到这些块上面;

4、throw关键字适用于方法体内部,用来抛出一个Throwable类型的异常,throws关键字用于方法体外部的方法声明部分;

5、使用一个catch块捕获多种异常时,多种异常之间用(|)隔开,异常变量有隐式的fianl修饰,因此程序不能对异常变量重新赋值;例如下面代码是错误的。

catch(IndexOutOfBondException|NumberFormatException e){
    e = new IndexOutOfBondException("exception");
}
6、除非在try块、catch块中调用了退出虚拟机的方法(System.exit(1);),否则不管在try块还是在catch块中执行怎样的代码,出现怎样的情况,异常处理的fianlly块总会被执行。

注意:自java7以后,因为有了自动关闭资源的try语句,所以并不一定要显式地写出finally块。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值