Использование блока finally
Оценка 4.8

Использование блока finally

Оценка 4.8
docx
18.11.2021
Использование блока finally
Л2-002135.docx

Использование блока finally

Возникновение и обработка исключения, как правило, приводит к не- типичному завершению программы. При этом в программе могут остаться неосвобожденные ресурсы, например, открытые файлы.

 

Для освобождения ресурсов используют блок finally.

Этот блок должен следовать за блоком try или catch. Последний яв- ляется необязательным.

 

Формат:

try

{

// Блок кода, предназначенный для обработки ошибок.

}

catch (ExcepTypel exOb)

{

// Обработчик для исключения типа ExcepTypel.


}

catch (ExcepType2 exOb)

{

// Обработчик для исключения типа ЕхсерТуре2.

}

. . . . . . . . . . . . . . . . . . . . . . . . . . . .

finally

{

// Код завершения обработки исключений.

}

 

Блок finally будет выполнен в любом случае – было сгенерировано исключение или нет.

Блок finally не может быть определен без блока try. Эта пара (как правило, с блоками catch) может находиться и внутри вызываемого метода.

В одной программе (методе) может быть несколько блоков finally. Все эти блоки будут выполнены после своих try-блоков.

 

Пример.

public static void Main()

{

try

{

double c = double.Parse(Console.ReadLine());

}

catch (Exception e)

{

Console.WriteLine("Error: " + e.Message); return;

}

finally

{

Console.WriteLine("Здесь освобождаются ресурсы." +

"Блок выполняется всегда");

}

}


 

Использование блока finally

Использование блока finally

ExcepType2 exOb) { // Обработчик для исключения типа

ExcepType2 exOb) { // Обработчик для исключения типа
Скачать файл