以前的异常处理
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(); } } }
原文:https://www.cnblogs.com/java-quan/p/13160460.html