Unidad III Manejo de
Excepciones en Java y
C++
M.C. Juan Carlos Olivares Rojas
1
Excepción
• El manejo de errores es una de las cosas
más importantes de cualquier lenguaje de
programación y de cualquier programa
elaborado con estos.
• Los lenguajes orientados a objetos nos
permiten un mejor control de los errores
ocurridos a través del uso de excepciones
2
Excepción
• Primero aparecieron las excepciones en
Java y hasta después en C++. C/C++ se han
caracterizado por el manejo de errores de
muy bajo nivel.
• Una excepción no es otra cosa que una
clase que nos sirve para manipular errores.
3
Excepciones
• Las excepciones se manejan de manera
muy similar en Java y en C++.
• En
C
no
existen
excepciones
y
generalmente se asocian valores negativos
a los errores y se procesan.
• Se debe indicar el código a validar con la
instrucción try.
4
Excepciones
• Las excepciones se atrapan con la palabra
clave catch, indicando cual es la excepción
a atrapar.
• En Java existe la clase genérica Exception
que sirve para atrapar cualquier tipo. Lo
recomendable
es utilizar
la clase
específica para atrapar la excepción.
5
Excepciones
• Se puede utilizar la palabra clave throws
para lanzar una excepción; es decir, para
producirla.
• Lanzar excepciones nos permite generar
nuestras propias excepciones para después
poder utilizarlas y manejar de forma
elegante los errores ocurridos.
6
Excepciones
• También existe la palabra reservada finally
que permite ejecutar un bloque de
instrucciones ocurra o no la excepción.
• En algunas ocasiones será necesario
atrapar una excepción en particular en
tiempo de diseño, sino de lo contrario
nuestros programas no compilaran.
7
Excepciones
try {
resultado = a/b;
}
catch (Exception e) {
System.out.println(“Error al dividir”);
e.printStackTrace();
}
8
Excepciones
catch (OtraExcepcion e2) {
…
}
finally
{
System.out.println();
}
9
• Para generar nuestras propias excepciones
se crea una clase que hereda de algún tipo
de excepción:
public class ExcepcionDivision extends
Exception {
public ExcepcionDivision() {
super(“Error al dividir entre cero”);
}
Excepciones
}
10
• Si se quiere lanzar la excepción en un
método, este quedaría así:
Public
int
calcular(int
a)
throws
ExcepcionDivision {
if(divisor==0)
throw new ExcepcionDivision;
….
Excepciones
}
}
11
Excepciones
• Algunos ejemplos de excepciones son:
•
•
•
•
•
•
ClassNotFoundException
ArithmeticException
IndexOutofBoundsException
NullPointerException
RuntimeException
IOException
12
Actividad 11
• Realización de un formulario en Java que
sirva de base para el calculo de las raíces
de una ecuación cuadrada.
• El programa deberá utilizar excepciones y
manejarlas de manera adecuada.
13
¿Preguntas, dudas y comentarios?
14
Descargar

Excepción