Блоки try , catch и finally - C#
Формулировка задачи:
Доброго времени суток бойцы , решил поделится с вами одним наблюдением , может кто-то добавит еще что-то по этой теме....
Всем известно назначение блоком try , catch и finally ... я вот всегда думал в чем все таки смысл блок finally , везде написано что он выполнится вне зависимости выбросит система исключение или нет , но почему б тогда не написать код без этого блока сразу после catch, простенький пример
Но ведь последняя строчка выведется и без последнего блока ? в чем жеж смысл
и тут я наткнулся вот на такую фразу
Блок finally выполнится и в том случае , если любой код в блоке try или в связанных с ним catch приведет к возврату из метода
И правда вот пример
P.S. Удивительное рядом .... если кто-то знает что-то интересное про эти блоки пишите
try { Console.WriteLine("Выполнился try"); } catch() { Console.WriteLine("Выполнился catch"); } finally { Console.WriteLine("О да я файнели"); }
private void XXX() { try { return; } catch (Exception ex) { return; } finally { MessageBox.Show("Вопреки ретурнам блок finally выполнится"); } }
Решение задачи: «Блоки try , catch и finally»
textual
Листинг программы
try { try { Console.WriteLine("Выполнился try"); } catch { Console.WriteLine("Выполнился catch"); } } finally { Console.WriteLine("О да я файнели"); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д