天天看点

JDK1.7中新增自动释放资源接口AutoCloseable

新增了try-with-resource 异常声明

在jdk7中只要实现了autocloseable或closeable接口的类或接口,都可以使用try-with-resource来实现异常处理和资源关闭

异常抛出顺序。在java se 7中的try-with-resource机制中异常的抛出顺序与java se 7以前的版本有一点不一样。

是先声明的资源后关闭

jdk7以前如果rd.readline()与rd.close()(在finally块中)都抛出异常则只会抛出finally块中的异常,不会抛出rd.readline();中的异常。这样经常会导致得到的异常信息不是调用程序想要得到的。

jdk7及以后版本中如果采用try-with-resource机制,如果在try-with-resource声明中抛出异(可能是文件无法打或都文件无法关闭)同时rd.readline();也势出异常,则只会势出rd.readline()的异常。