黑马程序员技术交流社区

标题: 抛出异常有个疑问 [打印本页]

作者: paozhuanyinyu    时间: 2014-8-4 23:13
标题: 抛出异常有个疑问
问题咋第一个catch那里,为什么是RuntimeExceptio,而不能是IOException
import java.io.*;
/*
* 将C盘一个文件复制到D盘
* 复制的原理其实就是将C盘下的数据文件存储到D盘下
* 1、在D盘创建一个文件,用于存储C盘中的数据
* 2、定义读取流和C盘文件关联
* 3、通过不断的读写完成数据存储
* 4、关闭资源
*/
public class CopyTextDemo {

        public static void main(String[] args) throws IOException{
                copy();
        }
        public static void copy() {
                FileWriter fw = null;
                FileReader fr = null;
                try{
                        fw = new FileWriter("FileWriterDemo_copy.txt");
                        fr = new FileReader("G:\\java\\IODemo\\src\\FileWriterDemo.java");
                        char[] bur = new char[1024];
                        int len = 0;
                        while((len = fr.read(bur))!= -1){
                                fw.write(bur,0,len);
                        }
                }
                catch(IOException ex){
                        throw new RuntimeException("读写失败");
                }
                finally{
                        if(fr!=null)
                                try{
                                        fr.close();
                                }
                                catch(IOException ex){
                               
                                System.out.println(ex.toString());
                        }
                        if(fw!=null)
                                try{
                                        fw.close();
                                }
                                catch(IOException ex){
                                System.out.println(ex.toString());
                        }
                }
        }
}






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2