Поделиться через


Исключения, создаваемые компилятором (Руководство по программированию в C#)

Некоторые исключения автоматически создаются средой CLR приложения платформы .NET Framework, когда происходит сбой основной операции. Эти исключения и условия их возникновения перечислены в следующей таблице.

Исключение

Описание

ArithmeticException

Основной класс исключений, происходящих при выполнении арифметических операций, таких как DivideByZeroException и OverflowException.

ArrayTypeMismatchException

Создается, когда массив не может хранить данный элемент, поскольку фактический тип элемента несовместим с фактическим типом массива.

DivideByZeroException

Создается при попытке разделить целое число на ноль.

IndexOutOfRangeException

Создается при попытке индексирования массива, если индекс меньше нуля или выходит за границы массива.

InvalidCastException

Создается, когда происходит сбой явного преобразования из основного типа в интерфейс либо в производный тип во время выполнения.

NullReferenceException

Создается при попытке ссылки на объект, значение которого равно null.

OutOfMemoryException

Создается при неудаче попытки выделения памяти с помощью оператора new. Это означает, что память, доступная для среды выполнения, уже исчерпана.

OverflowException

Создается при переполнении арифметической операции в контексте checked.

StackOverflowException

Создается, когда стек выполнения переполнен за счет слишком большого количества вызовов отложенных методов; обычно является признаком очень глубокой или бесконечной рекурсии.

TypeInitializationException

Создается, когда статический конструктор создает исключение, и не существует ни одного совместимого предложения catch для его захвата.

См. также

Ссылки

Исключения и обработка исключений (Руководство по программированию в C#)

Обработка исключений (Руководство по программированию на C#)

try-catch (Справочник по C#)

try-finally (Справочник по C#)

try-catch-finally (Справочник по C#)

Основные понятия

Руководство по программированию на C#