Некоторые причины, по которым следует избегать использования catch(…) в коде обработки исключений:
- Невозможность обработки всех исключений. stackoverflow.com Невозможно предусмотреть обработку всех возможных исключений, особенно в коде с большим количеством выполняемых операций. learn.microsoft.com
- Повторная генерация исключений. learn.microsoft.com Если при анализе становится понятно, что исключение невозможно полноценно обработать, то лучше его не захватывать, а не раскручивать стек вызовов для повторной генерации. learn.microsoft.com
- Игнорирование исключений. javarush.com Игнорирование исключений, часто наблюдаемое при пустых блоках catch, может привести к малозаметным ошибкам, которые трудно отследить. javarush.com
- Влияние на производительность. stackoverflow.com Использование исключений влечёт за собой определённые накладные расходы. stackoverflow.com
Однако есть и другие точки зрения. Например, некоторые считают, что сначала следует перехватывать наиболее конкретное исключение, а затем более общие исключения, чтобы правильно обрабатывать конкретные случаи. javarush.com
Таким образом, выбор подхода к использованию catch(…) зависит от конкретных условий и требований к коду.