Как определить, какой тип исключения был пойман, если операция улавливает несколько исключений?Java - Как проверить, какой тип исключения был брошен?
Этот пример должен иметь больше смысла:
try {
int x = doSomething();
} catch (NotAnInt | ParseError e) {
if (/* thrown error is NotAnInt */) { // line 5
// printSomething
} else {
// print something else
}
}
В строке 5, как я могу проверить, какие исключения был пойман?
Я пробовал if (e.equals(NotAnInt.class)) {..}
, но не повезло.
ПРИМЕЧАНИЕ: NotAnInt
и ParseError
- это классы в моем проекте, которые расширяются Exception
.
делает разъединить улов: улова (NotAnInt) {} улов (ParseError) { } –
Возможный дубликат [Java - Throwable to Exception] (https://stackoverflow.com/questions/12359175/java-throwable-to-exception) – Molham