Throwable(Error VS. Exception)
Throwable是所有java程序中错误处理的父类,有两种子类:Exception和Error
1. 紫色的是受检查的异常(cheked exception),其必须被try{...}catch 语句块所捕获,或者在方法签名里通过throws子声明。
受检查的异常必须在编译时被捕获处理,命名为Cheked Exception 是因为Java编译器要进行检查,JVM也要进行检查,以确保这个规则得到遵守。
2. 绿色的异常是运行时异常(runtime exceptio),需要程序员自己分析代码决定是否捕获和处理,比如 空指针,被0除...
3. 声明为Error的,则属于严重错误,如系统崩溃、虚拟机错误、动态链接失败等,这些错误无法恢复或者不可能捕捉,将导致应用程序中断,Error不需要捕获。