异常的体系

异常的体系:

Java中异常继承的根类是:Throwable.

Error : 错误的意思,严重错误Error,无法通过处理的错误,一旦出现,程序员无能为力了 只能重启系统,优化项目。比如内存奔溃,JVM本身的奔溃。这个程序员无需理会。 Exception异常的分类:编译时异常和运行时异常。 一、编译时异常:继承自Exception的异常或者其子类,编译阶段就会报错,必须程序员处理的。否则代码编译就不能通过!

/*
 方式一:
 抛出异常格式:
        方法 throws 异常1 ,  异常2 , ..{
        }
        
      2.建议抛出异常的方式:代表可以抛出一切异常,
        方法 throws Exception{

        }
     
 小结:
      编译时异常编译阶段就报错,必须程序员处理。
      方式一:出现异常的地方层层抛出,谁都不处理,最终抛出给虚拟机。
      这种方式虽然可以解决编译时异常,但是如果异常真的出现了,程序会直接死亡,所以这种方式并不好!

*/

二、运行时异常: 继承自RuntimeException的异常或者其子类,编译阶段是不会出错的,它是在运行时阶段可能出现,运行时异常可以处理也可以不处理,编译阶段是不会出错的,但是运行阶段可能出现,还是建议提前处理!
常见的运行异常:

1.数组索引越界异常: ArrayIndexOutOfBoundsException。

2.空指针异常 : NullPointerException。直接输出没有问题。但是调用空指针的变量的功能就会报错!

3.类型转换异常:ClassCastException。

4.迭代器遍历没有此元素异常:NoSuchElementException。

5.数学操作异常:ArithmeticException。

6.数字转换异常: NumberFormatException。

finally关键字:用在捕获处理的异常格式中,放在最后面。

finally的作用:finally代码块,其中的代码一定会被执行,可以在代码执行完毕以后进行资源的释放。

try: 1次。 catch:0-N次 (如果有finally那么catch可以没有!!) finally: 0-1次

自定义异常: 自定义异常是程序员自己定义的异常 自定义编译时异常.

a.定义一个异常类继承Exception.

b.重写构造器。

c.在出现异常的地方用throw new 自定义对象抛出! 编译时异常是编译阶段就报错,提醒更加强烈,一定需要处理!

自定义运行时异常.

a.定义一个异常类继承RuntimeException.

b.重写构造器。

c.在出现异常的地方用throw new 自定义对象抛出! 提醒不强烈,编译阶段不报错!!运行时才可能出现!!

异常的作用

1.可以处理代码问题,防止程序出现异常后的死亡。

2.提高了程序的健壮性和安全性。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值