Обработка (для меня) означает принятие соответствующих мер для возобновления потока вашего приложения.Если вы сбросите исключение, то вы не обработали его.Ведение журнала может быть одним из случаев, когда вы можете выбросить исключение.
Пример исключения, которое можно обработать: вы запускаете службу, которая уведомляет определенного пользователя о событии.Вы пытаетесь использовать веб-службу для отправки SMS-сообщения, это дает исключение (сервер отключен, учетная запись закрыта и т. Д.), Поэтому в качестве запасного варианта вы отправляете сообщение электронной почты, которое завершается ошибкой с другим исключением, поэтому вы пытаетесь вернуться к попыткесделать голосовой вызов.Это успешно, и ваш клиент получает уведомление обо всем, что он хотел бы знать.
Пример исключения, которое иногда может обрабатываться, а иногда нет: вы получаете исключение Недостаточно памяти системы.Иногда вы знаете, что у вас есть блокировка на что-то большое, но некритическое, которое вы можете отпустить, а затем повторить попытку, но обычно все, на что вы активно ссылаетесь, - это то, что должно иметься, и в этом случае вы ничего не можете реально сделать.do to recovery.
Обратите внимание, что довольно часто обработка означает просто возвращать false для функции, которой было предложено что-то сделать и для которой возвращается успех / сбой.Это не так бесполезно, как может показаться на первый взгляд, рассмотрите следующий сценарий: вы вносите изменения в файл, а затем говорите приложению сохранить изменения.Диск переполнен или недоступен по какой-либо причине.Любой из них вызовет исключение.При сохранении у вас isDirty = savefile (), исключение происходит внутри savefile и «обрабатывается» savefile, устанавливая результат в false.Это позволяет приложению знать (и показывать пользователю), что файл не был сохранен.