DE .NET, SQLSERVER Y MÁS, APRENDE CONMIGO!✔

Desarrollo de todo tipo de aplicaciones y Administración de Base de datos con Tecnología Microsoft


UNETE

Try - Catch en C#

0

 


Excepciones en C# (CSharp)

Cuando durante la ejecución de un programa ocurre un error que impide su continuación, por ejemplo, una entrada incorrecta de datos o un formato de salida no correcto, C# lanza una excepción, que si no se captura da lugar a un mensaje de error y detiene la ejecución (las excepciones se lanzan, no ocurren). Ahora si lo que deseamos es que la ejecución del programa no se detenga, habrá que capturarla y manejarla adecuadamente en un intento de reanudar la ejecución.

Las excepciones en C# son objetos de subclases de Exception. Por ejemplo, el espacio de nombres System define la clase base SystemException para las excepciones predefinidas; por ejemplo: aritméticas, de formato, intentar acceder a un elemento de una matriz con un índice fuera de límites, etc. Para capturar una excepción hay que hacer dos cosas: una, poner a prueba el código que puede lanzar excepciones dentro de un bloque try; y dos, manejar la excepción cuándo se lance, en un bloque catch. Por ejemplo:

try {

             //Código que puede lanzar una excepción

             Console.WriteLine("{0:f} + {1:f} = {2:d}", a, b, c);

} catch(Exception e) {

             //Manejar una excepción de la clase Exception

             System.Console.WriteLine("Error: " + e.Message);

}

En el ejemplo anterior, cuándo se lance una excepción del tipo Exception por que se produjo un error debido a la ejecución de una operación de entrada/salida, el objeto e almacenará la información relativa al error ocurrido, información que puede ser manipulada a través de las propiedades y métodos de su clase; por ejemplo, Message muestra un mensaje indicando qué error ocurrió. En el ejemplo anterior, al especificar que el tipo de excepciones que se desea atrapar son de la clase Exception, cabe cualquier excepción de cualquier clase derivada de Exception. Si quisiéramos filtrar un tipo particular de excepciones deberemos indicarlo explícitamente. Por ejemplo, cuándo ejecute el siguiente programa, observa que lanza una excepción de la clase FormatException por utilizar un formato d para mostrar un valor double. Por tanto, dicha excepción será atrapada por el primer bloque catch. Cuándo una excepción se atrapa, se considera manipulada.

using System;

 

class Test {

                 public static void Main(string[] args) {

                                 double a = 10, b = 20, c = 0;

 

                                 try {

                                                 c = a + b;

                                                 Console.WriteLine("{0:f} + {1:f} = {2:d}", a, b, c);

                                 } catch(FormatException) {

                                                 Console.WriteLine("Ha ocurrido un error de formato");

                                 } catch(Exception e) {

                                                 Console.WriteLine("Error: "+ e.Message);

                                 }

                 }

}

DEMOSTRACIÓN

En Visual Studio vamos a dar click en menú File à New à Project



En la Ventana emergente le damos click a Window, seleccionamos la opción “Console Application” y espacio Name colocamos el nombre del proyecto que para el Ejemplo es “Demo 2 20483” y luego presionamos el botón OK

 



En la ventana de código, debajo del método Main() escribiremos los métodos siguientes:



Luego escribiremos otra serie de métodos que contienen una serie de parámetros y devuelven un resultado de un cálculo cualquiera:



Luego escribiremos los métodos que nos servirán como ejemplo para el manejo y control de excepciones:





En el método Main() escribiremos el código para ejecutar dichos métodos:



 

Al ejecutar la solución



La salida en pantalla la visualizaríamos de la siguiente forma:



 

 


Tal vez te interesen estas entradas

No hay comentarios