0
|
Kartavya Ramnani · 技术社区 · 7 年前 |
![]() |
1
4
如果您不需要外部服务对象来执行任何其他操作:
|
![]() |
2
3
我认为资源试用中的执行顺序是自上而下的 (与所有其他java变量定义一样)
注意事项: ExternalServiceObject必须实现AutoCloseable |
![]() |
3
2
因此,如果您想使用try with resources,请使用:
|
![]() |
4
1
可以使用try with resources块关闭InputStream。它更具可读性,也不那么笨重。InputStream实现了AutoCloseable,因此在退出try with resources块时,将自动调用类的close方法。如果您只对try-catch-finally块的作用域使用InputStream,那么应该将其移动到try块。 此外,您应该避免(在可能的情况下)捕获异常。在try块中引发的任何结果异常都可能导致不必要的行为。 |