Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Топ:
Устройство и оснащение процедурного кабинета: Решающая роль в обеспечении правильного лечения пациентов отводится процедурной медсестре...
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Интересное:
Аура как энергетическое поле: многослойную ауру человека можно представить себе подобным...
Финансовый рынок и его значение в управлении денежными потоками на современном этапе: любому предприятию для расширения производства и увеличения прибыли нужны...
Как мы говорим и как мы слушаем: общение можно сравнить с огромным зонтиком, под которым скрыто все...
Дисциплины:
2018-01-13 | 186 |
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
|
|
Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!