Liuqichun's Blog

Java|异常 Exception 和 Error 区别

异常 Exception 和 Error 区别。

一、基础概念

程序中的错误:编译错误、运行时错误、逻辑错误。

编译错误和运行时错误比逻辑错误好处理一些。

Java 中异常分为两类:Exception 和 Error,这两个类都继承自 Throwable 类。

Error(错误)表示程序自身无法处理的错误,表示程序存在较大问题。多数错误与编程人员操作无关,多表示 JVM 执行过程中的错误,当这类错误发生时虚拟机通常选择终止。这类错误有 StackOverflowError、OutOfMemoryError。

Exception(异常)表示程序自身可以处理的错误。Exception 类有个重要的类 RuntimeException,RuntimeException 类及其子类表示 JVM 常用操作引起的错误,例如空值引用、除数为 0、下标越界。

二、异常分类

分类 1

1、非运行时异常,也称编译异常,这种异常在编译时进行检查,不进行处理无法通过编译。这些异常是非 RuntimeException 及其子类异常,例如 IOException、SQLException。

2、运行时异常(RuntimeException 及其子类),编译器不进行检查,方法抛出这种异常也无须刻意处理。常见的运行时异常有下标越界、除数为 0、空指针、类找不到等。

分类 2

1、受检查异常(编译器要求必须处理的异常),这类问题在程序开发过程中很常见,Exception 中非 RuntimeException 及其子类的异常都是受检查异常。

2、不受检查异常(编译器不强制处理),RuntimeException 和 Error 都是不受检查异常,即使方法抛出了这些异常也不要求必须捕获和抛出。

三、常见异常

1、RuntimeException

2、非 RuntimeException

3、Error


https://www.cnblogs.com/heqiyoujing/p/11297603.html https://blog.csdn.net/iblade/article/details/78196016

<< Previous Post

|

Next Post >>

#Java