Скачиваний:
64
Добавлен:
24.03.2015
Размер:
229.89 Кб
Скачать

16.7. Пользовательские классы исключений

В предыдущих программах при генерации исключений был использован системный тип Exception. Кроме него в среде .NET имеется большое количество специализированных классов исключений. Часто этих системных исключений вполне достаточно для реакции на те события, которые могут произойти в вашей программе. Однако программист-пользователь может определять собственные классы исключений. Их можно создавать либо на базе класса Exception, либо используя в качестве базовых более специализированные системные классы исключений.

В стандартной библиотеке определены два класса исключений, каждый из которых является прямым наследником класса System.Exception. Класс System.SystemException соответствует исключениям, порождаемым средой, в которой выполняется прикладная программа. Класс System.ApplicationException предназначен для создания объектов-исключений, относящихся к выполнению прикладных программ. Создавая собственные классы исключений, стандарт языка С# рекомендует делать их наследниками класса System.ApplicationException, а не класса System.Exception.

Определяя собственный класс исключений, рекомендуется объявить в этом классе три конструктора: конструктор умолчания, конструктор с параметрами типа string и конструктор с параметрами string и Exception. В каждом из этих конструкторов нужно вызвать конструкторы базового класса. В конструкторе умолчания в обращении к базовому конструктору ему передаётся текст сообщения, уникального для собственного класса исключений. В конструкторе с параметром типа string базовому конструктору передаётся сообщение об ошибке. В третьем конструкторе базовому конструктору передаётся сообщение об ошибке и объект внутреннего исключения.

13

Соседние файлы в папке Lekc_C#