A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© py强子 中级黑马   /  2013-7-22 00:33  /  2991 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 py强子 于 2013-8-3 23:12 编辑

Error异常就是不能处理,让程序停止;
RuntimeException也是让程序停止:
区别在哪?谢谢!

评分

参与人数 1技术分 +1 收起 理由
特殊服务 + 1

查看全部评分

7 个回复

倒序浏览
api里说得很细。。。。。。。。。。。。。
回复 使用道具 举报
   Error表示非常严重的、不可预期的异常情况,通常应用程序无需捕获并处理。
    RuntimeException与Error一样,也是无需捕获的,且就算在方法上throws了RuntimeException,调用该方法的语句也无需catch这些异常。

评分

参与人数 1技术分 +1 收起 理由
特殊服务 + 1

查看全部评分

回复 使用道具 举报
对于Error  一般不编写针对性的代码对其进行处理。
对于Exception可以使用针对性的处理方式进行处理。

用毕老师的话,如果把Error 和Exception 都看成是疾病的话,那么Error就是不可治愈的病,例如绝症,只能死亡(程序停止)。而Exception 是指可治愈的病,它也有能导致死亡(程序停止)的,就如同感冒一样可以致命一样。但是只要你处理好,例如抛出或者捕获,就有可能不让化险为夷,就让程序正常运行。而绝症是不管你怎么努力,最终还是会死亡的,所以我们在编写程序的时候,对于Error 来说,就是直接把程序停止,因为只有那样才能知道我们到底错在哪里了,而对于Exception 来说,我们一般会捕获或者抛出,而从而让程序能继续执行下去,而不是停止,不知道我这样解释你能不能看明白。

评分

参与人数 1技术分 +1 收起 理由
特殊服务 + 1

查看全部评分

回复 使用道具 举报
1)  error都是继承自父类java.lang.Error,而exception都继承自java.lang.Exception.
2) 再看看JDK中对于java.lang.Error和java.lang.Exception的解释。
    java.lang.Error: An Error is a subclass of Throwable that indicates serious problems that a reasonable application should not try to catch. Most such errors are abnormal conditions. 即:Error是Throwable的子类,用于标记严重错误。合理的应用程序不应该去try/catch这种错误。绝大多数的错误都是非正常的,就根本不该出现的。     java.lang.Exception: The class Exception and its subclasses are a form of Throwable that indicates conditions that a reasonable application might want to catch. 即Exception 是Throwable的一种形式的子类,用于指示一种合理的程序想去catch的条件。即它仅仅是一种程序运行条件,而非严重错误,并且鼓励用户程序去catch它。
所以checked exceptions: 通常是从一个可以恢复的程序中抛出来的,并且最好能够从这种异常中使用程序恢复。比如FileNotFoundException, ParseException等。

评分

参与人数 1技术分 +1 收起 理由
特殊服务 + 1

查看全部评分

回复 使用道具 举报
hoyouly 发表于 2013-7-22 15:27
对于Error  一般不编写针对性的代码对其进行处理。
对于Exception可以使用针对性的处理方式进行处理。

是Exception下的RuntimeException,并不是和Exception比较。不过还是谢谢啦!
回复 使用道具 举报
谢谢各位!
回复 使用道具 举报
杨壹 初级黑马 2013-7-23 14:25:13
8#
当出现error时,是虚拟机出错,程序员无法处理,程序就停止了,而当出现 RuntimeException时, RuntimeException属于Exception,是经常出的异常,可以catch也可以不catch,比如除数是0;还有一类exception是必须catch的,比如IOException
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马