try-with-resources语句块怎么用
时间: 2024-01-11 08:04:28 浏览: 72
如何在JDK 9中更简洁使用 try-with-resources 语句
try-with-resources语句块是一种自动关闭资源的语法糖,可以简化代码并确保资源的及时关闭。使用try-with-resources语句块需要遵循以下格式:
```
try (Resource1 res1 = new Resource1(); Resource2 res2 = new Resource2();) {
// 使用资源
} catch (Exception e) {
// 异常处理
}
```
其中,Resource1和Resource2是需要关闭的资源,如FileInputStream、Socket等。在try语句块中使用资源,当try语句块执行完毕后,会自动关闭所有的资源,无需手动调用close()方法。
如果try语句块中发生异常,会先执行catch语句块中的代码,然后再关闭资源。如果catch语句块中也有异常抛出,那么会抑制try语句块中抛出的异常,以避免多个异常同时抛出。
需要注意的是,只有实现了AutoCloseable接口的资源才能在try-with-resources语句块中使用。如果自定义的资源没有实现AutoCloseable接口,可以通过实现Closeable接口来间接实现AutoCloseable接口。
总之,使用try-with-resources语句块可以简化代码,减少资源泄漏的风险,提高程序的可靠性和可读性。
阅读全文