#c_sharp #ооп #исключения
Зачем нам нужно ключевое слово finally в c# , если код после try/catch и так всегда выполняется?
Ответы
Ответ 1
Код находящийся в блоке finally выполнится в ЛЮБОМ случае, то есть даже если в блоках try-catch содержится return или в блоке catch содержится еще один throw. В таких случаях код который просто идет после блока catch - не выполнится.Ответ 2
Код после catch выполняется всегда только в том редком случае, когда вы ловите все исключения (что очень не рекомендуется). Обычно вы ловите только нужные исключения, и код за catch'ем вполне имеет право не выполниться.Ответ 3
finally выполняет код в любом случае, после завершения конструкций в try, и не важно будет поймано исключение или нет. Чаще всего используется для освобождения ресурсов. catch выполняется только при возникновении исключения.
Комментариев нет:
Отправить комментарий