Java 异常体系

Throwable是所有错误(Error)和异常(Exception)的基类

  • Error:用于指示合理的应用程序不应该试图捕获的严重问题。这种情况是很大的问题,大到你不能处理了,所以听之任之就行了,你不用管它。比如说VirtualMachineError:当 Java 虚拟机崩溃或用尽了它继续操作所需的资源时,抛出该错误。好吧,就算这个异常的存在了,那么应该何时,如何处理它呢??交给JVM吧,没有比它更专业的了。
  • Exception:它指出了合理的应用程序想要捕获的条件。对于可恢复的条件使用被检查的异常(CheckedException),对于程序错误(言外之意不可恢复,大错已经酿成)使用运行时异常(RuntimeException)
    • CheckedException:这种是需要用try-catch来捕获的
    • UncheckedException(RuntimeException):不需要用try-catch捕获
      • IllegalArgumentException(抛出的异常表明向方法传递了一个不合法或不正确的参数)
      • NullPointerException(空指针)
      • ClassCastException(类转换异常)
      • ArrayIndexOutOfBoundsException(数组越界)
      • NoSuchMethodException(没有找到合适方法,经常出现在Setter和Getter的调用时)

 

posted @ 2013-08-03 19:44  hhhyde  阅读(188)  评论(0编辑  收藏  举报