zoukankan      html  css  js  c++  java
  • java基础(十)--- 异常

    异常分类图解:

    Throwable
    |--Error 严重问题,我们不处理。
    |--Exception
      |--RuntimeException 运行期异常,我们需要修正代码
      |--非RuntimeException 编译期异常,必须处理的,否则程序编译不通过

    异常对象的常见方法:

      如果程序需要在catch块中访问对象的相关信息,则可以通过访问catch块后的异常形参来获得。当java运行时决定调用某个catch块来处理该异常对象时,会将异常对象赋给catch块后的异常参数,程序即可通过该参数来获得异常相关信息。

      getMessage():返回该异常的详细描述字符串

      printStackTrace():将该异常的跟踪栈信息输出到标准错误输出。

      printStackTrace(PrintStream s):将该异常的跟踪栈信息输出到标准错误输出。

      getStackTrace():返回该异常的跟踪栈信息。

    finally的特殊情况:

      通常情况下,不要在finally块中使用如return或者throw等导致方法终止的语句。

      当java程序执行try块、catch块时遇到了return或者throw语句。这两个语句都会导致该方法立即结束,但是系统执行这两个语句并不会结束该方法,而是去寻找该异常处理流程中是否包含finally块,如果没有finally块,程序立即执行return或throw语句,方法终止。如果有finally块,系统立即开始执行finaly块----只有当finally块执行完成后,系统才会再次跳回来执行try块、catch块里的retrun或throw语句;如果finally块里也使用了return或throw等导致方法终止的语句,finally块一斤终止了方法,系统将不会跳回去执行try块、catch块里的任何代码。

    自定义异常
      继承自Exception或者RuntimeException,只需要提供无参构造和一个带参构造即可

  • 相关阅读:
    java输出菱型
    java----内部类
    java中的多重继承
    java算法--三个数字比较大小
    Python基础(2)
    Python基础(1)
    Redis主从同步
    一种高效的进程间的通信方式
    自旋锁和互斥锁的区别
    Linux读写锁的使用
  • 原文地址:https://www.cnblogs.com/judylucky/p/4555270.html
Copyright © 2011-2022 走看看