Exception 和 Error 都是继承了 Throwable 类,在 Java 中只有 Throwable 类型的实例才可以被抛出(throw)或者捕获(catch),它是异常处理机制的基本组成类型。

    Error是指在正常情况下不大可能出现的情况
    Exception可以分为可检查异常和不检查异常
    可检查异常是指必须显式的捕获处理,是编译期的一部分
    不检查异常就是运行时异常,可以通过编码来避免逻辑错误,不强制要求捕获