Excepciones progra

21
--- Excepciones Programacion Orientada a Objetos Manejo y Uso.

Transcript of Excepciones progra

---Excepciones---

Programacion Orientada a Objetos

Manejo y Uso.

Excepcion-Es un cierto tipo de error

O una condicion anormal queSe ha producido durante

La ejecucion de un programa.Algunas son fatales y provocan

Que se deba finalizarLa ejecion del programa.

Un buen programa debeGestionar correctamente todas

O la mayor parte de losErrores que se pueden producir.

Hay 2 estilos de hacer esto:

1.- A la “antigua usanza”: Los metodos devuelven un Codigo de error. Este codigo

Se chequea en el entorno que Ha llamado al metodo,

Gestionando de forma diferenteEl resultado correcto o cadaUno de los posibles errores.

Con soporte en el propioLenguaje.

En este caso el propio lenguageProporciona construccionesEspeciales para gestionar los

Errores o excepciones.

Excepciones Standar de JAVA.Los errores se representan

Mediante dos tipos de clases,Derivadas de la clase

THROWABLE: Error y Exception.

Jerarquia de clases relacionadacon THROWABLE.

La clase ERROR, esta relacionada con errores

de compilacion, Del sistema o de la JVM.Son irrecuperables y no

Dependen del programador.

La clase EXCEPCION.Dentro de ella se puede

Distinguir:1.- RuntimeException:

Excepciones muy frecuentes.Excepciones implicitas.

2.- Las demas clases derivadasDe EXCEPTION, son

Excepciones explicitas.

En el caso de RuntimeException

JAVA durante la ejecucion deUn programa chequea y lanza

Automaticamente lasExcepciones.

Las Clases derivadas de Exception, pueden pertenecerA distintos packages de JAVA.

Algunas pertenecen a java.lang(throwable, exception,…); otras

A java.io(EOFException, FileNotFound…)

Por heredar de THROWABLE,Todos los tipos de excepcionesPueden usar los metodos sig:

1. String getMessage()Exrae el mensaje asociado con

La excepcion.

2. String toString()Devuelve un String que Describe la excepcion.

3. void printStackTrace()Indica el metodo donde se

Lanzo la excepcion.

Lanzar una Excepcion.El proceso de lanzamientoDe una excepcion es el sig:

1. Se crea un objeto ExceptionDe la clase adecuada

2. Se lanza la excepcion con laSentencia throw, seguida del

Objeto Exception creado.

Esta excepcion debera serCapturada(catch) y gestionada

En el propio metodo o enAlgun otro lugar del programa.

Al lanzar una excepcion elMetodo termina de inmediato,

Sin devolver ningun valor.Todo metodo en el que se

Puede producir uno o mas tiposDe excepciones, debe

Declararlas en el encabezado por la palabra thow.

Capturar una Excepcion.

El programa no compilaraMientras el usuario no haga

una de estas dos cosas:

1.- Gestionar la ExcepcionCon una contruccion del tipo

TRY{…} CATCH{…}2.- Re-lanzar la excepcion haciaUn metodo anterior en el stack.

Utilizando la contruccionTHROWS.

Bloques TRY y CATCH.El codigo dentro del bloque tryEsta “vigilado”: Si se produce

Una situacion anormal ySe lanza una excepcion, el

Control salta del bloque tryY pasa al bloque catch, que

Se hace cargo de la situacion.

Se pueden incluirTantos bloques catch comoSean necesarios, cada uno

De los cuales, tratara un tipoDe excepcion.

El bloque finally es opcional.