Junior
¿Qué es el operador throw en C#?
sobes.tech AI
Respuesta de la IA
El operador throw se utiliza para lanzar explícitamente una excepción. Permite interrumpir la ejecución normal del programa y transferir el control al bloque de manejo de excepciones.
// Ejemplo de uso del operador throw
try
{
int[] numbers = { 1, 2, 3 };
int index = 5;
// Lanzar manualmente una excepción IndexOutOfRangeException
if (index >= numbers.Length)
{
throw new IndexOutOfRangeException("El índice está fuera del rango del array.");
}
Console.WriteLine(numbers[index]);
}
catch (IndexOutOfRangeException ex)
{
// Manejo de la excepción
Console.WriteLine($"Error: {ex.Message}");
}
El operador throw puede usarse en dos formas:
-
throw expression;: Lanza una nueva excepción, dondeexpressiones una instancia de una clase que hereda deSystem.Exception.throw new ArgumentException("Argumento inválido."); -
throw;: Vuelve a lanzar la excepción actual en el bloquecatch. Esto conserva toda la información de la pila de llamadas de la excepción original.try { // Código que puede lanzar una excepción } catch (FileNotFoundException ex) { // Manejo adicional o registro Console.WriteLine($"Archivo no encontrado: {ex.FileName}"); // Re-lanzar la excepción para su manejo posterior en la pila throw; }
El uso de throw es importante para:
- Indicar errores o situaciones inesperadas en la aplicación.
- Crear excepciones personalizadas para errores específicos.
- Transmitir información del error al código que llama para un manejo correcto.