En el mundo de la programación hay algo en común que tienen todos los programas al momento de ser creados o escritos, y esto son los errores leves o graves, pero es muy importante tratarlos y gestionarlos, para que no se interrumpa la ejecución de de nuestro programa, por lo cual es necesario utilizar excepciones, ya que permiten manejar los errores.
Excepción
Es un evento que ocurre durante la ejecución de un programa que interrumpe el flujo normal de sentencias, y las aplicamos cuando los errores del sistema son no fatales (conversión de tipo de datos, asignación a un posición de vector errónea, etc).
Jerarquía de Excepciones
Esta jerarquía de clases de excepciones comienza en Throwable que hereda de Object.
Throwable es una clase base que representa y contiene a todas las excepciones que pueden ocurrir en un programa Java.
RuntimeException se refieren a los errores producidos por el programador, ocurren al interior de JVM, en tiempo de ejecución. Por ejemplo:
- NullPointerException (acceder a un atributo de un objeto con valor null).
- IndexOutOfBoundsException (acceder a un array con indice fuera de rango).
- ArithmeticException (división por 0).
IOException se refieren a los errores que no puede evitar el programador, están mas relacionados con la Entrada/Salida del programa.
Tratamiento de Excepciones
A igual manera que tenemos sentencias: if-else, switch-case, for, return; para manejar el flujo de un programa, en excepciones tenemos sentencias para manejar los errores, tales como son: try-catch-finally, trow, throws.
try (intentar) Aquí colocaremos todo el código donde se podría generar un error. es indispensable colocar try y cacth, fianlly es opcional. catch (captura) Aquí capturamos el error como excepción, podemos colocar cuantos catch necesitemos; si se coloca una excepción en forma general (Exception), no lograremos capturar únicamente la especificada en el try, ademas si colocamos un catch con Exception, y adicionalmente un catch con una excepción mas especificada, se detectara primero la mas especificada, es decir ese cath se ejecutara primero.
finally (finalmente) Aquí se coloca la sección de código que deseamos que se ejecute siempre así ocurra o no ocurra la excepción.
No hay comentarios.:
Publicar un comentario