我有一个简单的问题,一个简单的代码部分,一些基本try-finally
块:
try {
// Some code which can throw an Exception
} finally {
// Some code which also can throw an Exception
}
我的主要问题是:有什么方法可以发现是在finally
块中抛出异常而不使用catch
和一些局部变量在块之间传递信息?
我在少数情况下这很有用,我不想添加一些丑陋的不必要catch
的块来设置一些变量throw Exception
。第一个例子是,如果我在一些 Spring 或容器管理的事务方法中,并且发生了try
阻塞Exception
。在这种情况下,我需要创建新事务finally
以使用数据库。第二个例子是我不想让我的原件Exception
被Exception
扔进finally
块掩盖,但如果没有,Exception
我会把它扔掉finally
(如果有的话)。
我知道这一切都可以完成,catch
但是还有其他方法吗,Java 中的一些元数据或其他任何方法?如果我们可以假设这将被一次性执行,那么它可能会有所帮助Thread
,所以也许有一些方法可以发现 Exception bounded to current Thread
?