黑马程序员技术交流社区

标题: Error----Exception?? [打印本页]

作者: 騛鹏    时间: 2013-4-4 23:14
标题: Error----Exception??
本帖最后由 騛鹏 于 2013-4-5 08:55 编辑

-
-----------------------------------------------------------------------------


Error与Exception  继承于Throwable 构造函数相似,且没有添加自己的方法。
那么,其意义何在(与直接使用Throwable相比)?
作者: 刘吉庆    时间: 2013-4-4 23:46
Error与Exception  虽都继承于Throwable,但在本质上很大的区别:
Exception:
1.可以是可被控制(checked) 或不可控制的(unchecked);
2.表示一个由程序员导致的错误;
3.应该在应用程序级被处理;
Error:
1.总是不可控制的(unchecked);
2.经常用来用于表示系统错误或低层资源的错误;
3.如何可能的话,应该在系统级被捕捉;

Throwable存在的意思,想必同继承的作用:1. 提高代码的复用性;2. 定义参数为父类,实参传入子类
作者: 刘印12    时间: 2013-4-4 23:57
Throwable 类是 Java 语言中所有错误或异常的超类。只有当对象是此类(或其子类之一)的实例时,才能通过 Java 虚拟机或者 Java throw 语句抛出。类似地,只有此类或其子类之一才可以是 catch 子句中的参数类型。两个子类的实例,Error 和 Exception,通常用于指示发生了异常情况。通常,这些实例是在异常情况的上下文中新近创建的,因此包含了相关的信息(比如堆栈跟踪数据
error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。 exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。




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