Download ¿Qué son? – tipos – manejo - ejemplos

Document related concepts
no text concepts found
Transcript
¿QUÉ ES UNA EXCEPCIÓN?
Es una condición anormal ocurrida durante la
ejecución de un programa.
No necesariamente es un error, sino más bien un
comportamiento no adecuado o no permitido.
 A diferencia de otros lenguajes de programación
orientados a objetos, Java incorpora la gestión
de excepciones, a través de ciertas clases
especiales.
Cuando ocurre una excepción, se crea un objeto que
contiene toda la información acerca de ésta.
El interpretador (JVM) debe encontrar el código para
manejarla (lanzar la excepción).
Si existe un código definido para el tipo de excepción,
este código atrapa la excepción.
Si no existe código definido para este tipo de excepción,
el programa se termina.
TIPOS DE EXCEPCIONES
Trowable
Exception
Error
Runtime Exception
IOException
EOFException
NullPointerException
FileNotFoundException
IndexOutOfBoundsException
MalformedURLException
NegativeArraySizeException
ArithmeticException
MANEJADOR DE EXCEPCIONES
Sirve para :
o Procesar solamente situaciones excepcionales donde un método
no podría completar su tarea debido a que no posee el control.
o En proyectos grandes para manejar las excepciones de una
manera uniforme en todo el proyecto.
o Simplifican los programas ya que se diferencia el código normal
del código de tratamiento de errores.
o Se crean programas mas robustos ya que en muchos casos si no
se trata la excepción el programa no compila.
Catch
try
Manejar
Excepciones
throws
throw
PALABRAS CLAVE AL MANEJAR EXCEPCIONES
try
Entre las llaves de try escribiremos
el código que hará funcional
nuestro programa.
Las instrucciones contenidas en un
bloque try, lanzarán la excepción si
ésta ocurre.
De esta manera yo
puedo controlar a la
Excepción.
Si no se utilizara el
bloque Try, se termina la
aplicación y nos sale un
error en la consola.
Al no utilizar try , al
momento de correr la
aplicación va a
generarse una
Excepción y como no
la manejamos, se
corta la aplicación
Catch
•
•
•
•
Para capturar la excepción que puede generar
este código necesitaremos de esta otra
instrucción.
Se debe escribir inmediatamente después del
bloque try.
Puede haber varios bloques catch para un
bloque try, y cada bloque catch manejará un
tipo de excepción.
Es decir, la sentencia “Catch” atrapa la
excepción lanzada y la maneja.
este
ejemplo
vemos como
el catch
DeEn
esta
manera
podemos
impedir
que lamaneja
la Excepción
y la imprime
en la consola,
aplicación
se corte,
al encontrarse
con un
siempre y cuando
se genere.
‘comportamiento
noésta
adecuado’.
CÓMO DEFINIR EXCEPCIONES PERSONALIZADAS
• A pesar de la gran cantidad de clases que Java posee
para el manejo de excepciones, se permite la
creación de excepciones propias al programador.
• Normalmente se crean nuevas excepciones cuando
las clases que posee Java no contemplan el manejo
de una situación anómala particular.
• Para crear las excepciones propias se hereda de la
clase Exception o de una de sus subclases.
DEFINIR EXCEPCIONES PERSONALIZADAS
Al definir Excepciones
personalizadas, es
conveniente generar
un paquete nuevo.
DEFINIR EXCEPCIONES PERSONALIZADAS
Pasos para crear una Excepción propia :
•
Dentro del paquete de Excepciones generar una
nueva clase con el nombre deseado.
•
Se define para esta nueva clase que herede de
Throwable o generalmente de Exception.
throws
En ciertos casos, cuando un método puede generar
una situación anómala, y no se desea manipular la
excepción en el código del propio método, es posible
que se pase o se “relance” la excepción al método
invocador, para ello se utiliza la sentencia throws.
Dicha sentencia obliga a quién invoque al método,
usar un bloque try / catch o propagarlo con otro
throw.
throw
• La sentencia throw (lanzar) se puede emplear
para indicar que ha ocurrido una excepción,
particularmente cuando se quiere lanzar una
excepción propia.
• throw requiere un simple argumento: un objeto
de la clase Throwable, esta clase tiene dos
subclases principales: Exception y Error.
Juan Manuel Ruiz - 2012