第九讲给忘球了,可见我对异常处理不是很在意,这个问题很严重。
try-catch-finally 我中文翻译就是,试着(try)运行可能出现问题的代码,抓取(catch)异常并给出处理方法,最终(finally)无论是否有异常都会运行的语句(负责收尾工作)。
如:
try{
...... //可能出现异常的代码
}
catch(所属性异常类对象){
...... //异常处理代码
}
catch(其它异常){
...... //异常处理代码
}
finally{
...... //收尾工作,如关闭数据连接,垃圾回收等
}
异常有那些种类,常见主要有:
1. 用户输入的错误
2. 数据库连接异常
3. 其它因为运行环境导致的错误
常见的异常:
divide-by-zero (被0除)
arithmetic overflow (算术溢出)
arrayaccess out of bounds (访问数组越界)
null object reference (对象引用为空)
file not found (找到文件)
每种异常类型都是一个类,有两种大分类:
system.systemException
System.ApplicationException
在try--catch的工作流程中,catch子句中有throw,return,或着exit。其中throw关键字是抛出异常不返回错误代码。
异常捕获的顺序,必须正确排列捕获的异常,范围的异常放到最前面,即如果异常类存在继承关系,则将子类异常放到父类前面的catch语句中。