En C #, puedo usar la throw;
instrucción para volver a generar una excepción mientras se conserva el seguimiento de la pila:
try
{
...
}
catch (Exception e)
{
if (e is FooException)
throw;
}
¿Hay algo como esto en Java ( que no pierde el rastro original de la pila )?
Throwable
s no se modifican arrojándolos. Para actualizar el seguimiento de la pila, debe llamar fillInStackTrace()
. Convenientemente, este método se llama en el constructor de a Throwable
.
throw e;
perderá el stacktrace. Pero no en Java.