文章标题

来源:互联网 发布:网络维修电脑招聘 编辑:程序博客网 时间:2024/06/05 18:57

java异常类Error和Exception

1.Error和Exception都继承自Throwable基类(Throwable直接继承自Object)。

2.error异常都继承自java.lang.Error,代表的异常通常是虚拟机和硬件的问题,不是程序能够控制和恢复的。

3.exception都继承自java.lang.Exception,其中又分为运行时异常(RuntimeException)和直接异常。运行时异常代表的是程序运行时的意外错误(比如除数为0时的异常,数组下标越界的异常);直接异常表示经常发生的错误,要提前预警,并在异常时做出反应,恢复异常(比如I/O时的异常,必须捕获或者抛出异常由其他程序来处理)。

4.不受检异常(Unchecked Exception)和受检查异常(Checked Exception)。不受检异常是指不用捕获或者抛出,运行时发生异常就立即终止;受检异常是指用代码对可能的异常进行捕获(try…catch)或者抛出(throws)异常,并且在运行发生异常时对捕获到的异常进行异常处理。
a.Error和RuntimeException都是不受检异常。因为Error是虚拟机和硬件的问题,程序无法控制,所以不用检查;RuntimeException也不推荐检查,一是因为没有必要,要检查的话太多太繁琐,二是因为这些异常主要是程序逻辑的问题(比如空指针,数组下标越界等等),发生异常时要立即终止并修改程序。
b.其他的Exception(直接异常)都是要进行检查的,并在发生异常进行恢复。
这里写图片描述

0 0
原创粉丝点击