Учебно-методический комплекс общее количество часов 58 ч. Лекции 28 ч
Использование объектов исключений
Download 2.46 Mb.
|
Язык программирования C#
- Bu sahifa navigatsiya:
- System.Exception
13.3. Использование объектов исключений
Как и все в языке C# исключения являются объектами со своими полями и методами. Для того, чтобы получить доступ к объекту, сгенерированного исключения, необходимо в круглых скобках после ключевого слова catch и типа исключения необходимо указать имя для объекта исключения. catch (InvalidCastException ex) Лист. 3 После этого имя ex можно будет использовать внутри catch блока для доступа к членам класса сгенерированного исключения. Каждый класс исключений может иметь свои специфические члены, но обычно все классы используют только члены, унаследованные от базового класса System.Exception. Полный список его членов можно найти в MSDN. class Program { static void Main(string[] args) { object MyObject = null; try { MyObject.ToString(); } catch (NullReferenceException ex) { Console.WriteLine("Использование неинициализированного" + "объекта!"); Console.WriteLine("Тип исключения: " + ex.GetType()); Console.WriteLine("Описание исключения: " +ex.Message); Console.WriteLine("Имя приложения, в котором произошло" + "исключение: " + ex.Source); Console.WriteLine("Стек вызовов, приведший к исключению: " + ex.StackTrace); Console.WriteLine("Метод в котором произошло исключение: " + ex.TargetSite); } } } Лист. 4.4 В этом примере объявляется MyObject типа object. Ей присваивается пустое значение null так, чтобы любое последующее обращение к ней приводило к исключительной ситуации System.NullReferenceException. Далее в блоке try мы пытаемся вызвать метод MyObject.ToString(), что естественно приводит к исключению, обрабатываемому в catch блоке. В заголовке catch блока, реагирующего на исключительную ситуацию тип System.NullReferenceException объявлена переменная ex этого типа. В теле блока catch выводится сообщение о произошедшем исключении и часть информации, хранимой в объекте ex. Вывод программы: Использование неинициализированного объекта! Тип исключения: System.NullReferenceException Описание исключения: Object reference not set to an instance of an object. Имя приложения, в котором произошло исключение: Base2 Стек вызовов, приведший к исключению: at Base2.Program.Main(String[] args) in D:\Course\advanced\Глава 4\Source\Base2\Program.cs:line 14 Метод в котором произошло исключение: Void Main(System.String[]) Вывод. 4.3 Download 2.46 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling