0807java异常总结

2017-08-17  本文已影响0人  冰凡513

一、Java的异常处理是通过5个关键字来实现的:try、catch、 finally、throw、throws

1、捕获异常:

try:执行可能产生的异常代码

catch:捕获异常

finally:无论发生什么异常,代码都执行

2、声明异常:

throws:声明方法可能要抛出的各种异常

3、抛出异常:

throw:手动抛出异常

二、常见的异常类型:

Exception                                                异常父类

ArithmeticException                              算术错误情形,如以0作为参数

ArrayIndexOutOfBoundsException      数组下标越界

NullPointerException                            空指针异常

ClassNotFoundException                    不能加载的类

IllegalArgumentException                    方法接收到非法参数

ClassCastException                             对象强制转换类型出错

NumberFormatException                      数字格式转换异常,如把“abc”换成数字

三、finally唯一不执行的情况

除非在try块或者catch块中调用了退出虚拟机的方法(即System.exit(1);),否则不管在try块、catch块中执行怎样的代码,出现怎样的情况,异常处理的finally块总是会被执行的。

当程序执行try块,catch块时遇到return语句或者throw语句,这两个语句都会导致该方法立即结束,所以系统并不会立即执行这两个语句,而是

去寻找该异常处理流程中的finally块,如果没有finally块,程序立即执行return语句或者throw语句,方法终止。如果有

finally块,系统立即开始执行finally块,只有当finally块执行完成后,系统才会再次跳回来执行try块、catch块里的

return或throw语句,如果finally块里也使用了return或throw等导致方法终止的语句,则finally块已经终止了方法,不用再跳回去执行try块、catch块里的任何代码了。

上一篇 下一篇

猜你喜欢

热点阅读