In C # kann ich die throw;
Anweisung verwenden, um eine Ausnahme erneut auszulösen, während die Stapelverfolgung beibehalten wird:
try
{
...
}
catch (Exception e)
{
if (e is FooException)
throw;
}
Gibt es so etwas in Java ( das den ursprünglichen Stack-Trace nicht verliert )?
Throwable
s werden nicht durch Werfen verändert. Um den Stack-Trace zu aktualisieren, müssen Sie aufrufen fillInStackTrace()
. Praktischerweise wird diese Methode im Konstruktor von a aufgerufen Throwable
.
throw e;
verliert ja die Stapelspur. Aber nicht in Java.