1)异常类的始祖Throwable类,其两个子类Error类和Exception类
2)可参见显示未知异常的更详尽信息的TestEx.java
catch(Exceptoin e){
e.printStackTrace();//可查看未知异常的具体信息
}
3)提醒和建议
不可以使用异常来控制程序逻辑
尽可能的多使用RuntimeException而不要自己创建异常
使用RuntimeException还是 Exception
优化复杂带异常的程序结构
1.一般格式:正常程序和出错处理分离开来
try { Java statement;
}catche(ExceptionType1 ExceptionObject) {
Exception1 handling;
} catche(ExceptionType2 ExceptionObject) {
Exception2 handling;
}….
}finally {
final handling;
// (统一的出口,最终必定要执行)
}}
2.把异常传播给堆栈,沿着被调用的顺序往前寻找,只要找到符合该异常种类彻底异常处理程序,就交给这部分程序去处理
3.异常可以人为地抛出,用throw new 语句
4.异常可以是系统已经定义好的,也可以是用户自己定义的
5.用户自己定义的异常一定继承自Throwable或Exception类