Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...
Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...
Топ:
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Устройство и оснащение процедурного кабинета: Решающая роль в обеспечении правильного лечения пациентов отводится процедурной медсестре...
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Интересное:
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Аура как энергетическое поле: многослойную ауру человека можно представить себе подобным...
Наиболее распространенные виды рака: Раковая опухоль — это самостоятельное новообразование, которое может возникнуть и от повышенного давления...
Дисциплины:
2018-01-13 | 187 |
5.00
из
|
Заказать работу |
|
|
Исключительная ситуация, или исключение, — это возникновение аварийного события, которое может порождаться некорректным использованием аппаратуры или неправильной работой программы, например, делением на ноль или переполнением.
Механизм исключений предназначен только для событий, которые могут произойти в результате работы самой программы и указываются явным образом. Исключения возникают тогда, когда некоторая часть программы не смогла сделать то, что от нее требовалось. При этом другая часть программы может попытаться сделать что-нибудь иное.
Исключения позволяют логически разделить вычислительный процесс на две части — обнаружение аварийной ситуации и ее обработка. Это важно не только для лучшей структуризации программы. Главное то, что функция, обнаружившая ошибку, может не знать, что предпринимать для ее исправления, а использующий эту функцию код может знать, что делать, но не уметь определить место возникновения. Это особенно актуально при использовании библиотечных функций и программ, состоящих из многих модулей.
Исключения генерирует либо среда выполнения, либо программист с помощью оператора throw.
Имя | Описание |
DivideByZeroException | Попытка деления на ноль |
FormatException | Попытка передать в метод аргумент неверного формата |
IndexOutOfRangeException | Индекс массива выходит за границы диапазона |
InvalidCastException | Ошибка преобразования типа |
OutOfMemoryException | Недостаточно памяти для создания нового объекта |
OverFlowException | Переполнение при выполнении арифметических операций |
StackOverFlowException | Переполнение стека |
Вопрос 28
Обработка исключительных ситуаций. Оператор try
Обработка исключений происходит в операторе try. Он содержит 3 части:
|
1) Контролируемый блок - составной оператор, предваряемый ключевым словом try. Все функции прямо или косвенно вызываются из блока так же ему принадлежат.
2) Один или несколько обработчиков исключений - блоков catch в которых описывается как обрабатываются ошибки различных типов.
3) Блок завершения finally выполняется независимо от того, возникла ошибка в контролируемом блоке или нет.
Синтаксис оператора try:
try блок [блок catch][блок finally]
Отсутствовать могут либо блоки catch либо finally, но не оба одновременно.
Реализация обработки исключительных ситуаций:
1) Обработка исключения начинается с появления ошибки. Функция или операция, в которой возникла ошибка, генерирует исключение.
2) Выполнение текущего блока прекращается, отыскивается соответствующий обработчик исключения, и ему передается управление.
3) Выполняется блок finally если он присутствует.
4) Если обработчик не найден, вызывается стандартный обработчик исключения. Обычно он выводит на экран окно с информацией об исключении и завершает текущий процесс.
Обработчики исключений должны располагаться непосредственно за блоком try. Они начинаются с ключевого слова catch за которым в скобках следует тип обрабатываемого исключения. Блоки catch просматриваются в том порядке в котором они записаны, пока не будет найден соответствующий типу выброшенного исключения.
Вопрос 29
Обработка исключительных ситуаций. Оператор throw
Для генерации исключения используется оператор throw с параметром, определяющим вид исключения. Параметр должен быть объектом, порожденным от стандартного класса System.Exception. Этот объект используется для передачи информации об исключении его обработчику.
Синтаксис оператора throw:
throw [ выражение ];Форма без параметра применяется только внутри блока catch для повторной генерации исключения. Тип выражения, стоящего после throw, определяет тип исключения, например:
throw new DivideByZeroException();Здесь после слова throw записано выражение, создающее объект стандартного класса "ошибка при делении на 0" с помощью операции new.
|
При генерации исключения выполнение текущего блока прекращается и происходит поиск соответствующего обработчика с передачей ему управления. Обработчик считается найденным, если тип объекта, указанного после throw, либо тот же, что задан в параметре catch, либо является производным от него.
Вопрос 30
|
|
Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!