异常
异常原理的一个解析:

Throwable-->exception--->Checked Exception 和 Unchecked Exception
-->error
在Java中异常都有一个共同的祖先throwable,Throwable有两个重要的子类(Exception,error)
Exception和Error的区别:
Exception:程序本身可以处理的异常,可以通过catch来捕获,Exception又可以
分为Checked Exception(受检查异常,如果受检查异常没有被catch/throw处理,就没办法通过编译,必须处理)和Unchecked Exception(不受检查异常,我们即使不处理不受检查异常也一颗正常通过编译,可以不处理)
Error:属于程序无法处理的错误。例如:内存溢出。java虚拟机运行错误。
throw 和 throws 的区别
throw:
1)throw 语句用在方法体内,表示抛出异常,由方法体内的语句处理。
2)throw 是具体向外抛出异常的动作,所以它抛出的是一个异常实例,执行 throw 一定是抛出了某种异常。
throws:
1)throws 语句是用在方法声明后面,表示如果抛出异常,由该方法的调用者来进行异常的处理。
2)throws 主要是声明这个方法会抛出某种类型的异常,让它的使用者要知道需要捕获的异常的类型。
3)throws 表示出现异常的一种可能性,并不一定会发生这种异常。
Throwable的常用方法:
String getMessage():返回异常发生时的简要概述
String toString(): 返回异常发生时的详细描述
Void printStackTrace():在控制台打印Throwable对象封装的异常信息。

浙公网安备 33010602011771号