java-IO异常处理

以前的异常处理

public class Demo3 {
    public static void main(String[] args) {
        //提高fw的作用域
        //变量定义的时候可以没有值,但是使用的时候必须有值
        FileWriter fw =null;//变量的声明应该放在try的外面因为
        //放在try里面,后面的finally用不了
        try{
            fw= new FileWriter("C:\\Users\\quan\\Desktop\\练习\\src\\code\\haotusay",true);
            for (int i = 0;i<10 ;i++){
                fw.write("qq" + i+"\n");
            }
        }catch (IOException e){

        }finally {
            //创建对象失败了,fw默认值为null,null是不可以
            //调用方法的,会抛出NullPointerException,需要增加
            //一个判断,不是null再把资源释放
            if (fw != null) {
                try {
                    //fw.close方法声明抛出了IOException
                    //所以我们就处理这个异常对象,要么throws,要么try catch
                    fw.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

public class Demo4 {
    public static void main(String[] args) {
        try(FileWriter fw= new FileWriter("C:\\Users\\quan\\Desktop\\练习\\src\\code\\haotusay",true);){
            for (int i = 0;i<10 ;i++) {
                fw.write("qq" + i + "\n");
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

猜你喜欢

转载自www.cnblogs.com/java-quan/p/13160460.html
今日推荐