Error与Exception

来源:互联网 发布:c语言好学不 编辑:程序博客网 时间:2024/06/07 02:11
Error类和Exception类的父类都是throwable类,他们的区别是:
Error类一般是指与虚拟机相关的问题,如系统崩溃,虚拟机错误,内存空间不足,方法调用栈溢等。对于这类错误的导致的应用程序中断,
仅靠程序本身无法恢复和和预防,遇到这样的错误,建议让程序终止。

Exception类表示程序可以处理的异常,可以捕获且可能恢复。遇到这类异常,应该尽可能处理异常,使程序恢复运行,而不应该随意终止异常。


Exception类又分为运行时异常(Runtime Exception)和受检查的异常(Checked Exception )。
运行时异常;ArithmaticException,IllegalArgumentException,编译能通过,这种情况不像错误类那样,程序运行时本身可以解决,由异常代码调整程序方向,可以继续运行。
而受检查的异常,要么用try。。。catch捕获,要么用throws字句声明抛出,交给它的父类处理,否则编译不会通过。


运行时常见的异常;
ArrayIndexOutOfBoundsException 数组下标越界异常,
ArithmaticException 算数异常 如除数为零
NullPointerException 空指针异常

IllegalArgumentException 不合法参数异常


常见的非运行时异常  IOException

0 0