Exception和Error都继承于Throwable这个类,在java中只有Throwable类型的实例才可以被抛出(Throw)和捕获(catch),它是异常处理机制的基本组成类型。
Error 表示恢复不是不可能,但很困难的一种情况,比如内存溢出,网络故障,不可能指望程序去处理的一类错误。
Exception 表示一种程序设计或实现的一种问题。分为两类:一般异常和运行时异常。一般异常是在方法定义时声明处理的,可以try catch 处理,也可以throw 抛出处理。比如IOException ,FileNotFoundException 等。 运行时异常是程序在运行时发生的异常,可以try catch 处理也可以不处理,NullpointerException 就是一种常见的运行时异常。