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块也会执行。

posted @ 2018-10-16 22:47  陈程序员  阅读(3822)  评论(0编辑  收藏  举报