一:使用try catch的场合
如果不使用这种try结构时,代码报错退出就无bai法继续执行。有的代码出错就应该退出,有的出错尚可以补救,就不应该退出。对于这种出错不应该退出的就需要使用这种结构,在catch中进行补救。
二:使用try catch的规则
a.尽量不要将try…catch写在循环中。
b.如果能捕获多个异常,那么先捕获小异常,在捕获大异常
try {
// ....
} catch (RuntimeException e) {//小异常
//处理1
} catch (Exception e) {//中异常
//处理2
} catch (Throwable t) {//大异常
//处理3
}
c.try{ .....}代码块里面的代码尽量的少,避免出现大段大段的代码
d.catch( ) 尽量避免使用万能代码捕获所有的异常,比如
try {
//代码
} catch (Throwable t) {//这样写就捕获了所有异常,不便于区分处理
//Throwable 是错误和异常的父类
}
e.适当配合finally代码块
finally可以没有,有的话只能有一个。无论有没有发生异常,它总会在这个异常处理结构的最后运行。finally总是要执行,这以可以在异常处理最后做一些清理工作。如关闭IO流等。
try {
//IO流代码
} catch (IOException e) {
}finally {
ioinput.close();//流的关闭
}