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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 逸俊逍全 中级黑马   /  2013-12-24 15:32  /  1049 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Exception和Error有什么异同?

评分

参与人数 1黑马币 +3 收起 理由
乔兵 + 3

查看全部评分

6 个回复

倒序浏览
对于问题的划分:两种:一种是严重的问题,一个是非严重的问题
对于严重的问题,java通过error类进行描述
  对于error一般不编写针对性的代码对其进行处理
对于非严重的问题,java通过exception类进行描述
   对于exception可以使用针对性的处理方式进行处理

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报
Exceptions
1.可以是 可被控制(checked) 或 不可控制的(unchecked)
2.表示一个由程序员导致的错误
3.应该在应用程序级被处理
Errors
1.总是 不可控制的(unchecked)
2.经常用来用于表示系统错误或低层资源的错误
3.如何可能的话,应该在系统级被捕捉

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报
Error的继承关系:
    java.lang.Object
        java.lang.Throwable
            java.lang.Error
Exception的继承关系:
    java.lang.Object
        java.lang.Throwable
            java.lang.Exception

二者不同之处:
Exception:

1.可以是可被控制或不可控制的;

2.表示一个由程序员导致的错误;

3.应该在应用程序级被处理,也就是try{} catch{}

Error:

1.总是不可控制的;

2.经常用来用于表示系统错误或低层资源的错误;

3.如何可能的话,应该在系统级被捕捉;

希望可以帮助到楼主,嘿嘿!!

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报
异常分为两类:一类是严重的,用Error类进行描述,对于这类类java一般不编写针对性的代码进行描述;
另一类是非严重的,用Exception来描述,对于这类类可以使用针对性的方式进行处理。Error和Exception有个父类Throwable。
视频里老师说的很清楚的

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报
error跟exception是Throwable的两大部分 : 
Throwable
          |--Error:倾向于描述严重错误
          |--Exception:倾向于描述一般错误

对于我们初入门级别的菜鸟来讲,exception被用到的比较多,毕向东老师的视频里面也有详细的讲解,你可以看看

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报
两者区别在于问题的严重性:前者属于轻微问题,比较好的容易治愈,比如感冒,程序可以通过捕捉等可以进行处理 后者就属于较严重的问题了,程序一般,比如癌症.针对这些问题程序通常也不是特别容易解决,exit

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马