Hasta ahora he publicado c贸dgio sencillo, f谩cil de entender y he explicado lo que significa cada l铆nea de c贸digo en los ejemplos que he utilizado. Quiero cambiar un poco eso, ya que hemos utilizado varias veces el "try and catch" para el manejo de excepciones, pero no tenemos definido lo que en realidad significa esto en la aprte de programaci贸n.
Quiero hablar de la teor铆a con respecto al manejo de excepciones ya que es una de las cosas mas importantes en la programaci贸n, si no es lo esencial. Como programador siempre tengo un lema presente, el cual ustedes tambi茅n deberian tener presente, es el siguiente:
"Todo Sistema tiene su Falla"
Esto aplica tanto a la computaci贸n y desarrollo de sistemas, como a otras 谩reas. Si lo analizamos tiene mucha l贸gica porque como todos sabemos nada es perfecto. Lo que hacemos con las excepciones es manejar las distintas fallas que el programa pueda tener, desde las m谩s simples hasta las m谩s complejas, haciendolo as铆 m谩s robusto, sin embargo siempre habra una que otra que se nos pase y eso es normal. Tambi茅n debo decirles que lo que estoy redactando lo estoy sacando de mis conocimientos, as铆 que si tengo un error en alguna definici贸n o explicaci贸n, haganmelo saber.
Ahora bien, vamos a lo que realmente debemos conocer, he elaborado una serie de preguntas, en donde se define claramente lo que debemos conocer con respecto a este tema.
¿Qu茅 es una excepci贸n?
En la programaci贸n, una excepci贸n es conocida como un evento que interrumpe el comportamiento adecuado del programa, provocando que este deje de funcionar temporal o permanentemente.
¿Para qu茅 se utiliza el manejo de excepciones?
Los manejos de excepciones se utilizan para evitar que el programa se cuelgue o deje de funcionar correctamente. Desde el punto de vista del usuario, un manejo de excepci贸n se utiliza para indicarle al usuario que hacer al momento de que se origine una falla.
¿Por que utilizar un manejo de excepci贸n?
Simplemente porque todo programa tiene errores y el manejo de excepciones nos ayudan a controlar las fallas de forma adecuada y sencilla.
¿C贸mo manejar una excepci贸n adecuadamente?
Al momento de manejar una excepci贸n, se debe tener en cuanta que el error lo genera alg煤n tipo de dato espec铆fico, es decir que si el error lo genera un arreglo, la excepci贸n tambi茅n debe ser manejada del tipo arreglo. Si lo hacemos de esta forma tendremos un c贸digo m谩s ordenado y m谩s eficiente.
¿Cu谩les son las m谩s conocidas?
- InvalidIndexException: Excepci贸n de 铆ndice no v谩lido (arreglos). Se genera cuando el 铆ndice se encuentra fuera del rango de un arreglo.
- ElementTypeException: Excepci贸n del tipo de un elemento (arreglos). Se genera al tratar de introducir un elemento que no es compatible con el arreglo.
- NoSouchElementException: Excepci贸n de un elemento no encontrado (arreglos). Se genera cuando el programa no encuentra un elemento espec铆fico dentro de un arreglo.
- ArrayException: Excepci贸n en el arreglo. Este manejador es capaz de controlar todo tipo de excepciones generadas por un arreglo, engloba a las tres anteriores.
- IOException: Excepci贸n de entrada y salida. Por lo general, son generadas cuando el programa va a utilizar una variable y esta conlleva a un error por su mal manejo. Son las mas utilizadas en este lenguaje.
- Exception: Este es el manejador de excepciones m谩s simple y general, es utilizado en la mayoria de los m茅todos y es capaz de manejar cualquier excepci贸n.
Existen m谩s tipos de manejador de excepciones, pero estos son los m谩s comunes o, mejor dicho, los m谩s utilizados en este lenguaje. Los que he colocado en la lista son del tipo throwbable.
¿Qu茅 c贸digo se debe colocar para aplicar el manejo de excepciones?
Las l铆neas de c贸digo para aplicar la captura y manejo de excepciones son "try" y "catch", que signif铆can "intentar" y "capturar", es decir que le indicamos al programa que intente ejecutar las l铆neas de c贸digo que se encuentran en el "try", y que si encuentra alguna falla capture el error y ejecute las l铆neas de c贸digo que hemos colocado en la captura o "catch".
try
{
//Variables y resto del c贸digo del programa
{
catch (tipo_de_excepci贸n variable_de_la_excepci贸n)
{
//C贸digo para el manejo de excepci贸n
}
Esto es f谩cil de entender, luego de declarar un m茅todo vamos a colocar un "try", y dentro de llaves lo que queremos que haga el programa, escribimos nuestro c贸digo de forma normal, luego abrimos un "catch" para indicarle al programa que hara cuando encuentre una excepci贸n. Igualmente podemos declarar primero las variables del m茅todo y luego colocar el "try" al momento de utilizarlas.
A la variable de excepci贸n podemos colocarle cualquier nombre, mientras no sea un nombre de alguna palabra reservada en Java, en la mayor铆a de los ejemplo que dise帽o es llamada "exp" o "e". Por cada "try" debe haber un "catch", eso seria lo ideal, aunque tambi茅n se podria usar una excepci贸n general como "Exception", la cual manejar铆a cualquier error que se produzca durante la ejecuaci贸n del programa.
Esto, como ya dije antes, es uno de los temas m谩s importantes en la programaci贸n, sin embargo, no lo explico por completo debido a que este tema es demasiado extenso, sin embargo con lo que estoy publicando en esta entrada debe ser suficiente como para entender las excepciones y aplicarlas a nuestro c贸digo de forma r谩pida y eficaz.
De cualquier forma, tengo un manual en Java de como manejar excepciones y puedo enviarselos por e-mail. Este manual no fue hecho por mi, de hecho lo baje desde la web y se los dejo a disposici贸n, no recuerdo de donde lo descargue, pero la fuente original esta en ingl茅s desde la p谩gina de oficial de Java, y quien lo tradujo fue Juan Antonio Palos, puedes leer sus manuales que se encuentran en la p谩gina de programaci贸n en castellano, haciendo click en aqui.
Por 煤ltimo dejo una frase que utilizo mucho al momento de entrar en este tema. Es algo que todos los programadores debemos tener en cuenta al momento de dise帽ar algo.
"Si un programador utiliza el programa, al momento de presentarse una falla el puede corregirla facilmente ya que sabe donde se genero el problema, pero si un usuario encuentra una falla, este deja de utilizar el programa y busca uno m谩s eficiente".
El manejo de excepciones ayuda a que esto no ocurra, todo dependiendo de que tan h谩biles seamos al momento de utilizarlas.
Recibe notificaciones por correo
Lamentablemente hay muchos usuarios en la red que han llegado al blog para escribir obscenidades, as铆 que la moderaci贸n se hace necesaria. Recuerda utilizar un lenguaje correcto y espera a que sea aprobado.
Si necesitas publicar c贸digo haz click en "Conversi贸n" para hacerlo legible.
Conversi贸nConversi贸n