文章结茧自:深入理解 Java 中的 try-with-resource
在java1.7之后,新增try-with-resource 方式方法,解决了原始的finally收到释放资源可能出现多层嵌套等弊端。
try-with-resource的实现
首先必须在其资源类上实现AutoClosable接口
public class Connection implements AutoCloseable {
public void sendData() {
System.out.println("正在发送数据");
}
@Override
public void close() throws Exception {
System.out.println("正在关闭连接");
}
}
调用类
public class TryWithResource {
public static void main(String[] args) {
try (Connection conn = new Connection()) {
conn.sendData();
}
catch (Exception e) {
e.printStackTrace();
}
}
}
看看最后的打印结果
正在发送数据
正在关闭连接
资源关闭被自动调用了。