Gestion de errores en java
-
Upload
jefferson-sarmiento -
Category
Technology
-
view
5.391 -
download
8
Transcript of Gestion de errores en java
Capítulo II:Capítulo II:Gestión de errores en javaGestión de errores en java
IntroducciónIntroducción
Una excepción es una condición anormal Una excepción es una condición anormal que surge en una secuencia de código que surge en una secuencia de código durante la ejecución del programa.durante la ejecución del programa.Cuando un método ha provocado una Cuando un método ha provocado una excepción, tiene dos posibilidades:excepción, tiene dos posibilidades: Gestionarla él mismo. Es decir, el propio método Gestionarla él mismo. Es decir, el propio método
deberá capturar, o detectar, el error producido y deberá capturar, o detectar, el error producido y tratar de resolverlo.tratar de resolverlo.
Pasarla a otro método. El método que ha Pasarla a otro método. El método que ha originado el error puede pasar el objeto de tipo originado el error puede pasar el objeto de tipo excepción al método que lo invocase.excepción al método que lo invocase.
Tipos de excepciones en javaTipos de excepciones en java Excepción. Se trata de un conjunto de Excepción. Se trata de un conjunto de
excepciones que el programa del usuario excepciones que el programa del usuario debería capturar, es decir, resolver.debería capturar, es decir, resolver.
Error. Esta clase representa fallos, Error. Esta clase representa fallos, generalmente, no controlados que originan la generalmente, no controlados que originan la parada del programa en ejecución.parada del programa en ejecución.
Excepciones no capturadas. El propio interprete Excepciones no capturadas. El propio interprete de java es el encargado de resolver el de java es el encargado de resolver el problema.problema.
Excepciones capturadas. El programador debe Excepciones capturadas. El programador debe encargarse de capturar y resolver el problema, encargarse de capturar y resolver el problema, si no lo hace el programa no compilará.si no lo hace el programa no compilará.
Clases derivadas de exceptionClases derivadas de exception AWTException. Excepción sobre elemento derivado del paquete AWTException. Excepción sobre elemento derivado del paquete
java.awt.java.awt. ClassNotFoundException. Error al tratar de utilizar una clase.ClassNotFoundException. Error al tratar de utilizar una clase. IllegalAccesssException. Se intenta acceder a una clase a la que no IllegalAccesssException. Se intenta acceder a una clase a la que no
se tiene permiso.se tiene permiso. DataFormatException. Error en el formato de los datos.DataFormatException. Error en el formato de los datos. IOException. Excepciones producidas al realizar tareas de entrada IOException. Excepciones producidas al realizar tareas de entrada
y salida por el programa.y salida por el programa. NoSuchFieldException. No se encuentra un determinado atributo.NoSuchFieldException. No se encuentra un determinado atributo. NoSuchMethodException. No se encuentra un determinado NoSuchMethodException. No se encuentra un determinado
método.método. RuntimeException. Errores en tiempo de ejecución, las clases RuntimeException. Errores en tiempo de ejecución, las clases
derivadas son: ArithmeticException, ClassCastException, derivadas son: ArithmeticException, ClassCastException, IndexOutofBoundsException, NegativeArraySizeException, IndexOutofBoundsException, NegativeArraySizeException, NullPointerException.NullPointerException.
Sentencias try/catch/finallySentencias try/catch/finally
try: Es un bloque que intenta ejecutar un código try: Es un bloque que intenta ejecutar un código que podría generar una o varias excepciones. que podría generar una o varias excepciones. Esta sentencia debe tener por lo menos una Esta sentencia debe tener por lo menos una sentencia catch. La sentencia try puede tener sentencia catch. La sentencia try puede tener bloques try/catch anidados.bloques try/catch anidados.
catch: Si se produce la excepción se captura por catch: Si se produce la excepción se captura por este bloque de código ( pueden existir varios).este bloque de código ( pueden existir varios).
finally: Bloque opcional, aparece después del finally: Bloque opcional, aparece después del último catch y proporciona un código que último catch y proporciona un código que siempre se ejecuta, sucedan o no los siempre se ejecuta, sucedan o no los excepciones.excepciones.
Sentencias throw y throwsSentencias throw y throws throw: Se utiliza para lanzar (crear) una throw: Se utiliza para lanzar (crear) una
excepción, esta indica el punto desde el cual se excepción, esta indica el punto desde el cual se lanza la excepción.lanza la excepción.
throws: Permite listar los tipos de excepciones throws: Permite listar los tipos de excepciones que un método puede lanzar (el listado de que un método puede lanzar (el listado de excepciones aparecerán separados por una excepciones aparecerán separados por una coma). La sintaxis de esta sentencia es: coma). La sintaxis de esta sentencia es:
Tipo nombre_de_método (lista_parametros) Tipo nombre_de_método (lista_parametros) throws lista_excepciones{throws lista_excepciones{ //cuerpo del método//cuerpo del método}}
Declaración de excepciones Declaración de excepciones propiaspropias
Para definir una nueva excepción Para definir una nueva excepción
únicamente será necesario crear una nueva únicamente será necesario crear una nueva
clase que herede de la clase Exception clase que herede de la clase Exception
(extends Exception) e implementar aquellos (extends Exception) e implementar aquellos
métodos que se consideran necesarios. métodos que se consideran necesarios.