Em C #, posso usar a throw;
instrução para repetir uma exceção, preservando o rastreamento de pilha:
try
{
...
}
catch (Exception e)
{
if (e is FooException)
throw;
}
Existe algo parecido com isto em Java ( que não perde o rastreamento de pilha original )?
Throwable
s não são modificados jogando-os. Para atualizar o rastreamento de pilha, é necessário chamar fillInStackTrace()
. Convenientemente, esse método é chamado no construtor de a Throwable
.
throw e;
perderá o rastreamento de pilha. Mas não em Java.