异常层次 
 1) 起源于Error的类代表不常用的环境(通常是硬件层面); 
 2) 应用程序不能够从Error中恢复正常; 
 3) 所有的Java异常都起源于Exception; 
 4) RuntimeExcepiton也称为未检查异常; 
 5) 未检查异常无须捕获; 
 6) 其它异常,也称为检查异常,必须处理 

 Object 
 ↑ 
 Throwable 
 ↑ 
 |ˉˉˉˉˉˉˉˉ| 
 Error Exception 
  | ↑ 
 | |ˉˉˉˉˉˉˉ| 
 RuntimeException 
 
一些未检查的异常 
 1) java.lang.ArithmeticException 如:除0; 
 2) java.lang.NullPointerException 如:没初始化一个References便使用; 
 3) java.lang.ArrayIndexoutofBoundsException 如:调用一个有十个元素的Array的第十一个元素的内容; 
 4) java.lang.NumberFORMatException 如:Integer.parseInt("a"); 
一些已检查的异常 
如:FileNotFoundException、IOException等
 
========================================================
容易混淆的概念:

RuntimeExcepiton为未检查的异常 ,也称运行时异常。这类异常可以不做处理,因为这类异常很普遍,全部处理可能对程序的可读性和运行效率产生影响。

其它异常(non-RuntimeException)称为已检查的异常,也称非运行时异常。必须处理。因为,对于这类异常来说,如果程序不进行处理,可能会带来意想不到的结果。