Честно говоря, иметь дескриптор обработчика исключений Exception
кажется мне немного ленивым.Так как Exception
проверен, вы должны нести ответственность за обработку или восстановление после ошибки.Если вы не не в состоянии восстановиться после ошибки, или обстоятельства, в которых вы находитесь, мешают вам написать код, который позволяет элегантно восстанавливаться, его следует перебросить в RuntimeException
вместоуказать на проблему.
Конечно, обработчики исключений служат двум целям:
- Они дают вам возможность определить стандарт того, как выглядят ответы об ошибках и что они содержат в деталях.
- Они дают вам возможность регистрировать ошибку, чтобы вы могли вернуться позже и исправить ее.
Я бы настоятельно рекомендовал использовать схему повторных бросков, помеченную Exception
s какне проверяется и обрабатывает тех, кто в обработчиках исключений.В качестве отказоустойчивой ловушки вы можете использовать универсальный обработчик исключений для Exception
, чтобы перехватить все точки, которые не были преобразованы, и записать, что произошло.
Это должно Никогда не означает, что вы, как разработчик, разрешаете Exception
распространяться до самого верха без явной причины.