使用对象,我们使用3个基本步骤:尝试与 - 资源的详细信息
- 宣言
- 实例化
- 初始化
我的问题是关于什么必须完成的步骤()
尝试使用的一部分,以便自动关闭要创建的资源。 -
实施例1将物体的FileReader被自动在该代码封闭:
try (BufferedReader br = new BufferedReader(new FileReader(filePath)))
{
//some code;
}
实施例2 - 将BUF2是汽车在此代码封闭:
private static BufferedReader buf1;
public static void main(String[] args) throws IOException {
//some code
try (BufferedReader buf2 = buf1)
{
}
}
P.S.有人认为这个问题是Try With Resources vs Try-Catch的重复。不是这样。这个问题是关于try-catch和try-with-resources之间的区别。我的问题是关于试用的细节。
听起来像一个家庭作业问题,但这里有个提示:try-with-resources *要求*声明的变量实现'AutoCloseable',并且会在隐式finally块中调用'close()'。 – Andreas
准备(学习)认证*是作业。谷歌OCPJP甚至会链接到“Oracle大学”网站。 ---也许在[The try-with-resources Statement](https://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html)上的Java教程的第一段会帮助你。 – Andreas
如果你真的在认真学习Java,你不应该害怕尝试。创建一个AutoCloseable类。在close()方法中添加一个System.out.println语句。使用上面的代码而不是BufferedReader。看看是否打印了一些东西。或者只是在BufferedReader.close()中添加一个调试器断点并查看是否已达到。 –