Использовать Instanceof
ключевое слово java. Возвращает true, если экземпляр объекта имеет правильный тип.
if(e instanceof SomeStandardException)
Примечание: instanceof
возвращает true как для точного типа, так и для всех родительских типов. Поэтому, если вы используете его в каскадном if-elseif
, тогда поместите больше конкретных типов вверху и более общие (родительские) типы внизу.
Примечание 2: перехват общих символов Exception
, как предлагается в ссылке, является плохой практикой - вы должны ловить только те исключения, которые хотите обработать Таким образом, вместо того, чтобы сохранять исключение, вы должны перехватить конкретное исключение через try-catch-catch
, сохранить соответствующий флаг (возможно, логическое поле) и затем воздействовать на этот флаг.