美文网首页
0807java异常总结

0807java异常总结

作者: 冰凡513 | 来源:发表于2017-08-17 11:23 被阅读0次

    一、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块里的任何代码了。

    相关文章

      网友评论

          本文标题:0807java异常总结

          本文链接:https://www.haomeiwen.com/subject/jbugrxtx.html