之间有什么区别
try {
fooBar();
} finally {
barFoo();
}
和
try {
fooBar();
} catch(Throwable throwable) {
barFoo(throwable); // Does something with throwable, logs it, or handles it.
}
我更喜欢第二个版本,因为它使我可以使用Throwable。两种变体之间是否存在任何逻辑差异或首选约定?
另外,有没有办法从finally子句访问异常?
Throwable
从finally
块,因为可能不存在是一个Throwable
。