zoukankan      html  css  js  c++  java
  • Java 抛出异常

    http://blog.csdn.net/lu_ca/article/details/52184423 这一篇,讲解的非常好。

    Java的异常分为两类,Throwable是最基本的,它的下面分为Error和Exception。

    Error主要指JVM运行时错误,内存溢出,栈溢出,JVM奔溃等, 是属于不可查的,也是无法处理的。

    Exception包括可查异常,不可查异常。

    常见的异常包括数组越界,空指针引用,算术运算错误,非法参数错误等。

    异常的处理有两种方式,一种是try{}catch{},另一种是直接在方法中throws。在try,catch中,如果有多个catch,当前catch捕获不到,则会往上抛,直到能够接受。假如还没有的话,则直接报异常。

    对于try{}catch{}finally{}中。只有以下情况finally不会执行,一种是在finally之前执行了System.exit(1),另一种是虚拟机发生异常报错。

    对于try,catch,finally的代码块中,主要分以下几种情况进行判断。

    对于不抛出异常的try中的return,分以下几种情况进行判断。

    如果程序执行完try后,会去搜索是否用finally。如果没有,则在return中返回值,执行完毕。

    如果有finally,如果finally有能够终止程序的代码,或者是有return,则程序执行完finally后,不会执行try中的return。

    如果在finally,没有能够终止程序的代码,则程序执行完finally后,会回到try,返回try中的return值。

  • 相关阅读:
    3170: [Tjoi 2013]松鼠聚会
    1577: [Usaco2009 Feb]庙会捷运Fair Shuttle
    时间管理小强升级记
    Lifray Portlet
    反面模式
    LiferayFAQ(持续更新)
    【转载】JRockit检测Tomcat内存溢出JAVA内存泄漏问题
    Liferay环境搭建
    QQ登陆篇
    设计模式MM版
  • 原文地址:https://www.cnblogs.com/CloudStrife/p/7218572.html
Copyright © 2011-2022 走看看