区别分析如下:
Error: 程序不应该捕捉的错误,应该交由JVM来处理。一般可能指非常重大的错误。这个错误我们一般获取不到,也无法处理!
(推荐教程:java入门教程)
Exception:程序中应该要捕获的错误。这个异常类及它的子类是我们需要学习获取要处理的。
(1)RuntimeException:运行时异常,也叫未检查异常,是Exception的子类,但不需捕捉的异常超类,但是实际发生异常时,还是会导致程序停止运行的的,只是编译时没有报错而已。比如除数为零,数组空指针等等,这些都是在运行之后才会报错。
此类异常,可以处理也可以不处理,并且可以避免。
(视频教程推荐:java视频教程)
(2)在Exception的所有子类中,除了RuntimeException类和它的子类,其他类都叫做非运行时异常,或者叫已检查异常,通常被定义为Checked类,是必须要处理可能出现的异常,否则编译就报错了。
Checked类主要包含:IO类和SQL类的异常情况,这些在使用时经常要先处理异常(使用throws或try catch捕获)。