1.Throwable是所有异常的基类(父类),两个子类Error和Exception
①Error:java运行时系统的内部错误或资源耗尽错误,应用程序不应该抛出这种类型的对象,一旦发生这种异常除了是程序安全地终止之外,没有其他办法。
②Exception:java程序中应该关注的是这种异常。其有两个分支:RuntimeException和IOException。
1)RuntimeException:出现的情况一般是错误的类型的转换;数组访问越界;访问空指针等, 基本上就是自己的问题导致的,需要仔细检查代码。
2)IOException:程序本身没有问题,其他原因导致的异常。例如:试图在文件尾部后面读取数据,试图打开一个不存在的文件等。
Java语言规范将派生于Error类或RuntimeException类的所有异常类称为未检查异常,所有其他异常称为已检查异常。