黑马程序员技术交流社区

标题: 看下这个异常程序 [打印本页]

作者: Be_myself    时间: 2014-7-18 16:53
标题: 看下这个异常程序
public class Rethrow {
    public static void readFile(String file) throws FileNotFoundException {
        try {
            BufferedInputStream in = new BufferedInputStream(new FileInputStream(file));
        } catch (FileNotFoundException e) {
            e.printStackTrace();
            System.err.println("不知道如何处理该异常或者根本不想处理它,但是不做处理又不合适,这是重新抛出异常交给上一级处理");
            //重新抛出异常
            throw e;
        }
    }
     
    public static void printFile(String file) {
        try {
            readFile(file);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }
     
    public static void main(String[] args) {
        printFile("D:/file")
    }
}

1,不知道如何处理该异常或者根本不想处理它,但是不做处理又不合适,这是重新抛出异常交给上一级处理"
            //重新抛出异常,   这句话说的是throw e 吗?   那throw 有抛给了谁?  谁来处理?
2,FileNotFoundException 这个方法不是已经throws 了一个FileNotFoundException异常,交给调用者去处理, 那他自己为什么还try-catch处理?






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