码迷,mamicode.com
首页 > 编程语言 > 详细

java异常中的finally(一)

时间:2018-09-04 18:59:35      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:创建失败   null   管程   str   out   final   nal   lock   异常   

finally是保证语句能一定执行的。不管程序是否会报错,我们把程序一定要执行的代码放在finally中。

比如说流的关闭,不管在读写的过程中是否报错,一定要关闭流,可以把流的关闭操作放在finally中。

代码展示如下所示:

package exception;

import java.io.FileOutputStream;
import java.io.IOException;


/**
* finally在IO中的使用
* @author 小明
*
*/
public class FinallyDemo2 {

public static void main(String[] args) {
//以下是标准的流创建写法
FileOutputStream fos = null;

try {
fos = new FileOutputStream("fos.dat");
fos.write(1);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally{
try {
if(fos != null){
fos.close();
}
//报错1:有作用域,所以要把fos的定义放在try外面,否则会报错
//报错2:close()方法要求处理一个异常
//注意:在new创建的过程中也有可能报错,比如说路径不对(父路径不存在)
//这时会创建失败,那么fos仍然是空,那么这里应该多一层判断,
//因为fos为空,关闭会抛出异常。
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}


}

}

这时流创建时标准的写法。

 

java异常中的finally(一)

标签:创建失败   null   管程   str   out   final   nal   lock   异常   

原文地址:https://www.cnblogs.com/liaoxiaolao/p/9586134.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!