Wyjątki generowane przez kompilator

Niektóre wyjątki są zgłaszane automatycznie przez środowisko uruchomieniowe platformy .NET, gdy podstawowe operacje kończą się niepowodzeniem. Te wyjątki i ich warunki błędów są wymienione w poniższej tabeli.

Wyjątek opis
ArithmeticException Klasa bazowa dla wyjątków występujących podczas operacji arytmetycznych, takich jak DivideByZeroException i OverflowException.
ArrayTypeMismatchException Zgłaszany, gdy tablica nie może przechowywać danego elementu, ponieważ rzeczywisty typ elementu jest niezgodny z rzeczywistym typem tablicy.
DivideByZeroException Zgłaszany podczas próby podzielenia wartości całkowitej przez zero.
IndexOutOfRangeException Zgłaszany podczas próby indeksowania tablicy, gdy indeks jest mniejszy niż zero lub poza granicami tablicy.
InvalidCastException Zgłaszany, gdy jawna konwersja z typu podstawowego na interfejs lub typ pochodny kończy się niepowodzeniem w czasie wykonywania.
NullReferenceException Zgłaszany podczas próby odwołowania się do obiektu, którego wartość ma wartość null.
OutOfMemoryException Zgłaszany podczas próby przydzielenia pamięci przy użyciu nowego operatora kończy się niepowodzeniem. Ten wyjątek wskazuje, że pamięć dostępna dla środowiska uruchomieniowego języka wspólnego została wyczerpana.
OverflowException Zgłaszany, gdy operacja arytmetyczna w checked kontekście przepełnia się.
StackOverflowException Zgłaszany, gdy stos wykonywania jest wyczerpany przez zbyt wiele oczekujących wywołań metody; zwykle wskazuje bardzo głęboką lub nieskończoną rekursję.
TypeInitializationException Zgłaszany, gdy konstruktor statyczny zgłasza wyjątek i nie istnieje żadna zgodna catch klauzula, aby ją przechwycić.

Zobacz też