Error和Exception的父类都是Throwable类,不同之处是:
Error与虚拟机相关的错误,由虚拟机抛出,如内存溢出。
Exception表示需要捕获或程序进行处理的异常。Exception异常又分为运行时异常(RuntimeException)和受检查的异常(CheckedException)。运行时异常(ArithmeticException、IllegalArgumentException)编译能通过,但是一运行就终止了,程序不会处理运行时异常,出现这类异常,程序会终止。而受检查的异常,要么用try…catch捕获,要么用throws字句声明抛出,交给它的父类处理,否则编译不会通过。