1 unidad iii manejo de excepciones en java y c++ m.c. juan carlos olivares rojas

14
1 Unidad III Manejo de Unidad III Manejo de Excepciones en Java y C++ Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

Upload: felipa-matamoros

Post on 29-Jan-2016

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

11

Unidad III Manejo de Unidad III Manejo de Excepciones en Java y Excepciones en Java y

C++C++

M.C. Juan Carlos Olivares Rojas

Page 2: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

ExcepciónExcepció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

22

Page 3: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

ExcepciónExcepció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.

33

Page 4: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

ExcepcionesExcepciones

• 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.

44

Page 5: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

ExcepcionesExcepciones

• 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. 55

Page 6: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

ExcepcionesExcepciones

• 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.

66

Page 7: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

ExcepcionesExcepciones

• 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. 77

Page 8: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

ExcepcionesExcepciones

try { resultado = a/b;}catch (Exception e) { System.out.println(“Error al dividir”); e.printStackTrace();}

88

Page 9: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

ExcepcionesExcepciones

catch (OtraExcepcion e2) { …}finally{ System.out.println();}

99

Page 10: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

ExcepcionesExcepciones

• 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”); }}

1010

Page 11: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

ExcepcionesExcepciones

• 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;…. }}

1111

Page 12: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

ExcepcionesExcepciones

• Algunos ejemplos de excepciones son:

• ClassNotFoundException• ArithmeticException• IndexOutofBoundsException• NullPointerException• RuntimeException• IOException

1212

Page 13: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

Actividad 11Actividad 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.

1313

Page 14: 1 Unidad III Manejo de Excepciones en Java y C++ M.C. Juan Carlos Olivares Rojas

1414

¿Preguntas, dudas y ¿Preguntas, dudas y comentarios?comentarios?