English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Здесь вы узнаете о встроенных классах исключений в C#.
C#.NET предоставляет内置异常 классы для каждого возможного ошибки. Класс Exception является базовым классом для всех классов исключений.
Ниже приведена иерархия классов исключений в .NET:
В上图, класс Exception является базовым классом для классов SystemException и ApplicationException. Класс SystemException является базовым классом для всех исключений, которые могут возникать в процессе выполнения программы. Класс ApplicationException должен быть наследован для создания своих пользовательских исключительных классов. Можно создавать пользовательские классы для violations правил бизнеса или других связанных с приложением ошибок.
На следующем рисунке показано, как в режиме отладки Visual Studio вызывается NullReferenceException при попытке доступа к свойству null объекта.
В таблице ниже перечислены важные内置异常 классы в .NET.
Категория исключений | Описание |
---|---|
ArgumentException | В случае вызова метода с передачей недействительного параметра, который не является null. |
ArgumentNullException | В случае вызова метода с передачей null параметра. |
ArgumentOutOfRangeException | В случае, когда значение параметра выходит за пределы диапазона допустимых значений. |
DivideByZeroException | В случае деления целого числа на ноль. |
FileNotFoundException | В случае отсутствия физического файла в указанном месте. |
FormatException | В случае, когда формат значения не подходит для преобразования из строки через метод преобразования (например, Parse). |
IndexOutOfRangeException | В случае, когда индекс массива выходит за пределы нижнего или верхнего предела массива или集合а. |
InvalidOperationException | В случае вызова метода в текущем состоянии объекта, который является недействительным. |
KeyNotFoundException | В случае отсутствия указанного ключа для доступа к членам集合а. |
NotSupportedException | В случае вызова метода или операции, которая не поддерживается. |
NullReferenceException | Вызывается при попытке доступа к члену пустого объекта. |
OverflowException | Вызывается при переполнении при арифметических,强制转换 или преобразовательных операциях. |
OutOfMemoryException | Вызывается при недостатке памяти для выполнения кода. |
StackOverflowException | Вызывается при переполнении стека в памяти. |
TimeoutException | Интервал времени, выделенный для операции, истек. |
При возникновении ошибки, обработка исключений будет выполняться приложением или дефолтным обработчиком. В следующей части вы узнаете, как обрабатывать исключительные ситуации.