English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Clase de excepción de C# (Exception)

Aquí, aprenderá sobre las clases de excepciones integradas en C#.

C#.NET incluye una clase de excepción integrada para cada posible error. La clase Exception es la clase base para todas las clases de excepciones.

A continuación se muestra la jerarquía de las clases de excepciones en .NET:

Clases de excepciones en .NET

En la imagen anterior, la clase Exception es la clase base de SystemException y ApplicationException. La clase SystemException es la clase base para todas las excepciones que pueden ocurrir durante la ejecución del programa. La clase ApplicationException debe derivarse para crear sus propias clases de excepciones personalizadas. Se pueden crear clases personalizadas para errores que violan las reglas de negocio u otros errores relacionados con la aplicación.

La siguiente imagen muestra cómo se lanza una NullReferenceException al intentar acceder a una propiedad de un objeto null en modo de depuración de Visual Studio.

NullReferenceException

Clases de excepciones integradas

A continuación se muestra una tabla con las clases de excepciones integradas importantes en .NET.

Categoría de excepciónDescripción
ArgumentExceptionSe lanza cuando se pasa a un método un parámetro no null que es inválido.
ArgumentNullExceptionSe lanza cuando se pasa un parámetro null a un método.
ArgumentOutOfRangeExceptionSe lanza cuando el valor del argumento está fuera del rango de valores válidos.
DivideByZeroExceptionSe lanza cuando se intenta dividir un valor entero por cero.
FileNotFoundExceptionSe lanza cuando no existe el archivo físico en la ubicación especificada.
FormatExceptionSe lanza cuando el formato del valor no es adecuado para la conversión desde una cadena a través de un método de conversión (como Parse).
IndexOutOfRangeExceptionSe lanza cuando el índice del array está fuera de los límites inferior o superior del array o la colección.
InvalidOperationExceptionSe lanza cuando la invocación de un método es inválida en el estado actual del objeto.
KeyNotFoundExceptionSe lanza cuando no existe la clave especificada para acceder a los miembros de la colección.
NotSupportedExceptionSe lanza cuando se intenta usar un método o una operación no admitida.
NullReferenceExceptionSe desencadena cuando el programa accede a un miembro de objeto nulo.
OverflowExceptionSe desencadena cuando se produce un desbordamiento en operaciones aritméticas, conversión forzada o conversión.
OutOfMemoryExceptionSe desencadena cuando el programa no tiene suficiente memoria para ejecutar el código.
StackOverflowExceptionSe desencadena cuando se produce un desbordamiento de pila en la memoria.
TimeoutExceptionEl intervalo de tiempo asignado a la operación ha expirado.

Cuando ocurre un error, el código de la aplicación o el gestor predeterminado manejará la excepción. En la siguiente parte, aprenderá cómo manejar situaciones de excepción.