在stackoverflow偶尔看到的一个关于try()...catch()的用法,通常我们使用try...catch()捕获异常的,如果遇到类似IO流的处理,要在finally部分关闭IO流,当然这个是JDK1.7之前的写法了;在JDK7优化后的try-with-resource
语句,该语句确保了每个资源,在语句结束时关闭。所谓的资源是指在程序完成后,必须关闭的流对象。写在()里面的流对象对应的类都实现了自动关闭接口AutoCloseable;
格式:
1 2 3 4 5 |
|
演示代码,下面的test目录是不存在的,运行会抛出异常;
-
JDK1.7之前
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
-
JDK1.7之后
1 2 3 4 5 |
|