在 try-with-resources 中打开连接 - 第二个资源取决于第一个
Posted
技术标签:
【中文标题】在 try-with-resources 中打开连接 - 第二个资源取决于第一个【英文标题】:Open connection in try-with-resources - second resource depend on first 【发布时间】:2019-03-21 11:22:26 【问题描述】:我想使用 try-with-resources。我有两个资源,第二个取决于第一个。首先初始化后,我需要在第一个资源上执行方法。接下来我可以初始化第二个资源。我该怎么办?
try (First first = resource.get());
--Here I need run method: first.connect(...);
Second second = first.get())
...
【问题讨论】:
希望这会给你一个想法。 ***.com/questions/47175526/… 在第一个 try-with-resources 的 try 块内使用第二个 try-with-resources。 【参考方案1】:你可以嵌套try-with-resources,就像你可以使用普通的try-blocks:
try (First first = resource.get())
first.connect(...);
try (Second second = first.get())
// ...
【讨论】:
谢谢。我有:try (First first = resource.get()) first.connect(...); try (Second second = first.get()) // ... catch(Exception ex)..
第二次抛出异常的时候,第一次try-catch捕获这个异常?
@user11149927 当然,为什么你认为它不会?!它是第一个可以处理异常的 catch 块。以上是关于在 try-with-resources 中打开连接 - 第二个资源取决于第一个的主要内容,如果未能解决你的问题,请参考以下文章
android studio打开Zxing的android 项目出错,不支持try-with-resources?