62,625
社区成员
发帖
与我相关
我的任务
分享try(A a = new A(); B b = new B();) {
doSomething();}
final A a = new A();
Throwable primaryExc = null;
try (B b = new B()) { //当try-with-resources语句含有n个资源时,递归展开为n-1个资源的try-with-resources语句
doSomething();
} catch (Throwable t) {
primaryExc = t;
throw t;
} finally {
if (a != null) {
if (primaryExc != null) {
try {
a.close();
} catch (Throwable suppressedExc) {
primaryExc.addSuppressed(suppressedExc);
}
} else {
a.close();
}
}
}