`
Vikings825
  • 浏览: 65213 次
  • 性别: Icon_minigender_1
  • 来自: 威海
文章分类
社区版块
存档分类
最新评论

异常基础

阅读更多
衡量Java设计师和开发团队水平的好办法就是阅读他们应用程序里的异常处理代码--有多少代码用于捕获异常,有多少写进日志文件,如何处理异常,如何在不同的异常间跳转。

异常处理是一个Java程序员必须掌握的基础。



Java不是第一种支持异常的语言,却是第一种通过编译器来执行声明和处理某些异常的语言。

Java异常处理系统如下:

java.lang.Object
  java.lang.Throwable
      java.lang.Exception
       java.lang.RuntimeException
      java.lang.Error
       java.lang.ThreadDeath


Java中的异常也是对象,所有的异常都是派生于java.lang.Throwable类。
1.Throwable类
  Throwable类似Java语言中所有错误或异常的超类,只有当对象是此类或者其子类之一的实力时,才能通过Java虚拟机或者Java throw语句抛出。
  Error和Exception 是Throwable类的两个子类实例。

2.Error类
  Error是Throwable的子类,表示程序本身无法恢复的严重错误,用于指示应用程序的严重错误。
  在执行该方法期间,无需在方法中通过throws声明Error的任何子类,因为Java编译器不去检查它。

3.Exception类
  Exception类及其子类似Throwable的一种形式,它指出了应用程序想要捕获的异常,是程序本身可以处理的异常。

4.RuntimeException
  RuntimeException是那些可能在Java虚拟机正常运期间抛出的异常的超类。

Java通过面向对象的方法来处理异常,在一个方法的运行过程中,如果发生了异常,则这个方法生成代表该异常一个对象,并把它交给运行时系统,运行时系统寻找相应的代码来处理这一异常。通常把生成异常对象并把它提交给运行时系统的过程称为抛出(throw)一个异常。运行时系统在方法的调用栈中查找代码,从异常的方法开始进行回溯,直到找到包含相应异常的方法位置,这一过程称为捕获(catch)一个异常。

Java异常处理时通过5个关键字来实现的:try,catch,throw,throws,finally.
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics