Saltar al contenido
Portada » ¿Qué son las excepciones en C#?

¿Qué son las excepciones en C#?

En C#, las excepciones son situaciones inesperadas que ocurren durante la ejecución de un programa y que interrumpen su flujo normal. Estas situaciones pueden ser errores como división por cero, acceso a un índice de un array que no existe, o la apertura de un archivo que no se encuentra. Para manejar estas situaciones de manera controlada, se utilizan las estructuras try, catch, finally, y throw.

Manejo básico de excepciones con try y catch

El bloque try contiene el código que puede lanzar una excepción, mientras que el bloque catch maneja la excepción si ocurre. Aquí tienes un ejemplo simple:


try
{
    int divisor = 0;
    int resultado = 10 / divisor;
}
catch (DivideByZeroException ex)
{
    Console.WriteLine("Error: No se puede dividir por cero.");
}

En este ejemplo, si intentamos dividir por cero, se lanzará una excepción DivideByZeroException, y el bloque catch la capturará para mostrar un mensaje de error.

Bloque finally

El bloque finally se usa para ejecutar código que debe correr sin importar si se produjo una excepción o no. Esto es útil para liberar recursos, cerrar archivos o conexiones de base de datos, etc.


try
{
    // Código que puede lanzar una excepción
}
catch (Exception ex)
{
    Console.WriteLine("Ocurrió un error: " + ex.Message);
}
finally
{
    Console.WriteLine("Este bloque se ejecuta siempre.");
}

Lanzando excepciones manualmente con throw

A veces, puedes querer lanzar tus propias excepciones. Esto se hace con la palabra clave throw. Puedes usar esto para validar datos y lanzar una excepción si algo no cumple con los requisitos.


void ValidarEdad(int edad)
{
    if (edad < 18)
    {
        throw new ArgumentOutOfRangeException("edad", "La edad debe ser mayor a 18.");
    }
}

try
{
    ValidarEdad(16);
}
catch (ArgumentOutOfRangeException ex)
{
    Console.WriteLine("Error: " + ex.Message);
}

En este ejemplo, se lanza una excepción ArgumentOutOfRangeException si la edad es menor a 18, y se captura en el bloque catch.

Conclusión

El manejo de excepciones en C# es fundamental para crear aplicaciones robustas y resistentes a errores. Utilizando las estructuras try, catch, finally, y throw, puedes gestionar adecuadamente los errores, asegurándote de que tu aplicación se comporte de manera predecible incluso en situaciones inesperadas.

Etiquetas:

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *