Unidad III Manejo de Excepciones en Java y C++ - PowerPoint

Document Sample
Unidad III Manejo de Excepciones en Java y C++ - PowerPoint Powered By Docstoc
					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