看书看到有个地方没看明白,想问下。
代码如下:
图中的代码:
try (FileInputStream in = new FileInputStream("./TestDir/build.txt");
FileOutputStream out = new FileOutputStream("./TestDir/subDir/build.txt"))
书上说,这一段,是自动资源管理的写法,不需要自己关闭流,这是什么意思呢?
我们平常写代码,最后不都是要
in.close;
out.close;
关闭流么?
这个地方为什么不用关呢?
早年的java代码中大多都是这种写法:
在java 7 引入了新的语法
try-with-resource
,如果你需要关闭的资源实现了AutoCloaeable
接口,那么可以这么写:不用在
finally
显式调用close()
方法了