Учебно-методический комплекс общее количество часов 58 ч. Лекции 28 ч


ОБРАБОТКА ИСКЛЮЧИТЕЛЬНЫХ СИТУАЦИЙ


Download 2.46 Mb.
bet56/91
Sana19.10.2023
Hajmi2.46 Mb.
#1709453
TuriУчебно-методический комплекс
1   ...   52   53   54   55   56   57   58   59   ...   91
Bog'liq
Язык программирования C#

13. ОБРАБОТКА ИСКЛЮЧИТЕЛЬНЫХ СИТУАЦИЙ


13.1. Понятие исключения

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


Не следует, однако, считать возникновение исключительных ситуаций чем-то из ряда вот выходящим. Исключительные ситуации возникают во время выполнения программ сплошь и рядом. Например, пользователь ввел неправильные данные, не найден нужный файл или не может быть установлено соединение с удаленным сервером.
Также нельзя путать исключения с ошибками кодирования. Исключения возникают в тех ситуациях, которых программист просто не может избежать и которые от него не зависят. Маскировка собственных ошибок с помощью исключений является по-настоящему порочной практикой, затрудняющей отладку и сопровождение вашей программы.


13.2. Обработка исключительных ситуаций

Обработка исключений или исключительных ситуаций – специальный механизм в языке C# и шире в среде .Net Framework, предназначенный для обработки ошибок времени выполнения и других возможных проблем (исключений), которые могут возникнуть при выполнении программы.


Обычно прикладному программисту необходимо только обрабатывать исключения сгенерированные либо используемыми им библиотеками, либо средой выполнения CLR.
Для обработки исключений в C# используются три ключевых слова: try, catch, и finally.
try используется для обозначения блока кода, в котором может произойти ошибка.
catch обозначает блок кода, который реагирует на исключение, произошедшее в try блоке.
finally открывает блок кода, который выполняется вне зависимости от того произошло или нет исключение в try блоке. Обычно его используют для гарантированного освобождения ресурсов, занимаемых в try блоке.
finally блок не обязателен, в то время, как каждый блок try должен сопровождаться хотя бы одним блоком catch. Общий формат обработки исключительных ситуаций показан на следующей схеме.


try
{
// В этот блок помещают код который может привести к ощибке.
// Далее размещаются блоки, которые отлавливают возможные
// ошибки, возникающие здесь.
}
catch (InvalidCastException ex)
{
// В этом блоке помещается код, который будет выполнен если в
// в блоке try произошла ошибка типа InvalidCastException
// или производная от нее.
}
catch (NullReferenceException)
{
// В этом блоке помещается код, который будет выполнен если в
// в блоке try произошла ошибка типа NullReferenceException
// или производная от нее.
}

Download 2.46 Mb.

Do'stlaringiz bilan baham:
1   ...   52   53   54   55   56   57   58   59   ...   91




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling