try...catch..finally..语句中,finally是否必须存在?作用是什么
try {
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
}
1:finally并不是必须存在的,不过开发过程中建议加上finally,里面可以使用来执行打印日子代码,给出现问题时查看日子买下伏笔,做一些善后清理工作
2:finally的作用是,
finally里一般拿来做一些善后清理工作
try块里出现错误的话,会立即跳出try块,找到匹配的错误,执行catch块里的语句
此时,可能在try块里打开的文件没关闭,连接的网络没断开,对这些浪费的内存就不能及时释放回收。
如果有finally块的话,不管有没有出错,都会执行finally块里的内容。
有意思的是,即使try里包含continue,break,return,try块结束后,finally块也会执行。