黑马程序员技术交流社区

标题: error和exception有什么区别? [打印本页]

作者: 刘海源    时间: 2012-7-23 13:24
标题: error和exception有什么区别?
讲讲奥,到底有什么区别了
作者: 李东升    时间: 2012-7-23 13:27
error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。
exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。
作者: 范泰洋    时间: 2012-7-23 13:38
Error(错误,严重性问题,一般都是由jvm从底层抛出来的问题,通常不需要处理,直接修改程序)
Exception(是可以定义针对性的处理方式对该种情况进行处理。)
        不正常情况分两种,一种是可以解决的Exception,一种是严重性的Error。
        无论是Error还是Exception,他们的子类都有一个特点,子类名的后缀都是父类名。
作者: 田向向    时间: 2012-7-23 13:40
搜一下以前的帖子,有很多提问这个问题的,里面有很详细的答案    http://search.itheima.com/
作者: 王亚飞    时间: 2012-7-23 13:42
Error,不是你的问题环境或者硬件问题
Exception,表示系统捕获异常是你代码问题需要你解决的
作者: 徐帅    时间: 2012-7-23 14:38
        对于问题的划分:两种:一种是严重的问题,一种非严重的问题。
        1> 对于严重的,java通过Error类进行描述。
                对于Error一般不编写针对性的代码对其进行处理。
        2> 对与非严重的,java通过Exception类进行描述。
                对于Exception可以使用针对性的处理方式进行处理。
         无论Error或者Exception都具有一些共性内容。
        比如:不正常情况的信息,引发原因等。
作者: 李菁    时间: 2012-7-23 16:04
error是无法修复的系统错误。Exception只是抛出的异常而已
作者: 张凯    时间: 2012-7-23 16:53
Error(错误)表示系统级的错误和程序不必处理的异常,是java运行环境中的内部错误或者硬件问题,比如,内存资源不足等,对于这种错误,程序基本无能为力,除了退出运行外别无选择,它是由Java虚拟机抛出的。     
Exception(违例)表示需要捕捉或者需要程序进行处理的异常,它处理的是因为程序设计的瑕疵而引起的问题或者在外的输入等引起的一般性问题,是程序必须处理的。      Exception又分为运行时异常,受检查异常。      运行时异常,表示无法让程序恢复的异常,导致的原因通常是因为执行了错误的操作,建议终止程序,因此,编译器不检查这些异常。      受检查异常,是表示程序可以处理的异常,也即表示程序可以修复(由程序自己接受异常并且做出处理), 所以称之为受检查异常。
作者: rslheima    时间: 2012-7-23 18:43
刚刚从一本书上看到了一些,可以作为了解:
java中的异常可以分为 检查型异常,错误,和运行时异常3类
(1)检查型异常:需要程序员提供处理方式,如捕获或抛出。
(2)错误:是由程序以外的因素引起的,通常不需要程序员关心。
(3)运行时异常:是由程序员失误引起的,这些异常信息都可以避免。
作者: 肖琦    时间: 2012-7-23 23:18
Error和Exception同时继承自Throwable类,Throwable类是 Java 语言中所有错误或异常的超类。
Error和Exception是两个派系。其中:
Error及其所有的子类表示Java运行时系统的内部错误或资源用尽错误,当此类错误发生时,任何代码都不能挽救。
Error错误属于未检查异常,也就是说,你没有必要在方法的声明中throws这种异常。
Exception及其子类表示的异常都是可以挽救的。其中,又分为RuntimeException和其它异常。
RuntimeException及其子类比如:类型转换错误,数组访问越界,空引用,等等,总之,一定是自己程序的错误,但它们都是未检查异常。
其它的异常可能是自己的代码有问题,也可能是外部原因,比如硬盘的损坏导致的IO异常,
但都是已检查异常,即如果你的方法可能抛出这种类型的异常,你必须在方法声明的throws中注明
.

希望对你有帮助.......





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2