EXC JAv

6
TECNOLÓGICO DE ESTUDIOS SUPERIORES DE CUAUTITLÁN IZCALLI FORMATO DE ENTREGA DE EVIDENCIAS Código: FO-205P11000-XX Página 1de6 CONTENIDO (11) EXCEPCIONES En Java una excepción es un error o una condición anormal que se ha producido durante la ejecución de un programa. Java tiene diferentes tipos de excepciones: excepciones de I/O, las excepciones en tiempo de ejecución y las de su propia creación. Durante la compilación solamente se detectan los errores de sintaxis, pero el manejo de excepciones de Java permite manipular los errores que ocurren en tiempo de ejecución, entre estas podemos mencionar las excepciones aritméticas (división entre cero), excepciones de puntero (acceso a punteros NULL) y excepciones de indexación (acceso por encima o debajo de los límites de un vector). Algunas excepciones son fatales y causan el fin de la ejecución del programa. En este caso conviene terminar ordenadamente y enviar un mensaje explicando el tipo de error que se ha producido. En otras situaciones, por ejemplo cuando no se encuentra un archivo sobre el que se desea realizar una operación, el programa puede dar al usuario la oportunidad de corregir el error. Un buen programa debe manejar correctamente la mayoría de los errores que se puedan producir, Java proporciona las siguientes herramientas para el manejo de excepciones: try, catch, throw, throws y finally. Jerarquía de las Excepciones En Java, todas las excepciones están consideradas en el de árbol de excepciones que se deriva de la clase Throwable. Existen dos subclases directas de Throwable: Error y Exception. En la figura 1 se observa parte de la jerarquía de clases derivada de Throwable: La clase Error está relacionada con errores de la máquina virtual de Java y no el código, generalmente estos errores no dependen del programador por lo que no debe preocuparse por tratarlos. División: (1) Ing. En Sistemas Computacionales Grupo: (2) 321-V Asignatura: (3) Programación Orientada a Objetos Docente: (4) Joaquina Ocampo Ensuastigue Nombre del alumno: (5) No. de Control: (6) Fecha: (7) Nº Actividad: (8) Rubén Domínguez Hernández 143107006 06/11/14 3 Producto: (9) Calificación y firma del profesor:(10) Excepciones en java

description

dd

Transcript of EXC JAv

  • TECNOLGICO DE ESTUDIOS SUPERIORES DE CUAUTITLN IZCALLI

    FORMATO DE ENTREGA DEEVIDENCIAS

    Cdigo: FO-205P11000-XX

    Pgina 1de6

    CONTENIDO (11)

    EXCEPCIONES

    En Java una excepcin es un error o una condicin anormal que se ha producido durante la ejecucin de unprograma. Java tiene diferentes tipos de excepciones: excepciones de I/O, las excepciones en tiempo de ejecuciny las de su propia creacin. Durante la compilacin solamente se detectan los errores de sintaxis, pero el manejode excepciones de Java permite manipular los errores que ocurren en tiempo de ejecucin, entre estas podemosmencionar las excepciones aritmticas (divisin entre cero), excepciones de puntero (acceso a punteros NULL) yexcepciones de indexacin (acceso por encima o debajo de los lmites de un vector). Algunas excepciones sonfatales y causan el fin de la ejecucin del programa. En este caso conviene terminar ordenadamente y enviar unmensaje explicando el tipo de error que se ha producido. En otras situaciones, por ejemplo cuando no se encuentraun archivo sobre el que se desea realizar una operacin, el programa puede dar al usuario la oportunidad decorregir el error. Un buen programa debe manejar correctamente la mayora de los errores que se puedan producir,Java proporciona las siguientes herramientas para el manejo de excepciones: try, catch, throw, throws y finally.

    Jerarqua de las Excepciones

    En Java, todas las excepciones estn consideradas en el de rbol de excepciones que se deriva de la claseThrowable. Existen dos subclases directas de Throwable: Error y Exception. En la figura 1 se observa parte de lajerarqua de clases derivada de Throwable:

    La clase Error est relacionada con errores de la mquina virtual de Java y no el cdigo, generalmente estoserrores no dependen del programador por lo que no debe preocuparse por tratarlos.

    Divisin: (1) Ing. En Sistemas Computacionales Grupo: (2) 321-V

    Asignatura: (3) Programacin Orientada a Objetos Docente: (4) Joaquina Ocampo EnsuastigueNombre del alumno: (5) No. de Control: (6) Fecha: (7) N Actividad: (8)

    Rubn Domnguez Hernndez 143107006 06/11/14 3Producto: (9) Calificacin y firma del profesor:(10)

    Excepciones en java

  • TECNOLGICO DE ESTUDIOS SUPERIORES DE CUAUTITLN IZCALLI

    FORMATO DE ENTREGA DEEVIDENCIAS

    Cdigo: FO-205P11000-XX

    Pgina 2de6

    En la clase Exception se encuentran las excepciones RuntimeException, producidas por errores de programacin.El compilador de Java obliga a corregirlas.

    Figura 1

    Tipos de Excepciones

  • TECNOLGICO DE ESTUDIOS SUPERIORES DE CUAUTITLN IZCALLI

    FORMATO DE ENTREGA DEEVIDENCIAS

    Cdigo: FO-205P11000-XX

    Pgina 3de6

    Manejo de Excepciones

    try: Define un bloque de cdigo donde se puede generar una excepcin. El bloque try va seguido inmediatamentede uno o ms bloques catch y opcionalmente de una clusula finally. Cuando se lanza una excepcin el controlsale del bloque try actual y pasa a un manejador catch apropiado.

    La sintaxis general del bloque try consiste en la palabra clave try y una o ms sentencias entre llaves.try {

    // Sentencias Java}

    Se pueden presentar dos situaciones diferentes a la hora de definir el bloque try: Podemos tener ms de una sentencia que generen excepciones, en cuyo caso podemos definir bloques

    individuales para tratarlos. Podemos tener agrupadas en un mismo bloque try varias sentencias que puedan lanzar excepciones, con

    lo que habra que asociar mltiples controladores a ese bloque.

    catch: Define el bloque de sentencias que se ejecutarn cuando se haya producido una excepcin en un bloquetry.

    La sintaxis general de la sentencia catch en Java es la siguiente:catch( TipoExcepcion nombreVariable ) {

    // sentencias Java}

    Se pueden colocar sentencias catch sucesivas, cada una controlando una excepcin diferente. No debera intentarse capturar todas las excepciones con una sola clusula ya que representa un uso

    demasiado general y podran llegar muchas excepciones.catch( Exception e ) { } //captura genrica

    finally: El bloque de cdigo definido en finally se ejecuta siempre, haya o no excepcin.

  • TECNOLGICO DE ESTUDIOS SUPERIORES DE CUAUTITLN IZCALLI

    FORMATO DE ENTREGA DEEVIDENCIAS

    Cdigo: FO-205P11000-XX

    Pgina 4de6

    // Ejemplo excepcin sin tratarpublic class EjExcepcion{public static void main (String args[]){

    int i = 0;String cadenas[] = {"Cadena 1","Cadena 2","Cadena 3","Cadena 4"};for (i=0; i java EjExcepcionCadena 1Cadena 2Cadena 3Cadena 4java.lang.ArrayIndexOutOfBoundsExceptionat EjExcepcion.main(EjExcepcion.java, Compiled Code)Exception in thread "main" Process Exit...

    Vamos a reescribir el programa anterior para tratar el error:

    // Ejemplo de tratamiento de excepcionespublic class EjExcepcionBien{public static void main (String args[]){

  • TECNOLGICO DE ESTUDIOS SUPERIORES DE CUAUTITLN IZCALLI

    FORMATO DE ENTREGA DEEVIDENCIAS

    Cdigo: FO-205P11000-XX

    Pgina 5de6

    int i = 0;String cadenas[] = {"Cadena 1","Cadena 2","Cadena 3","Cadena 4"};

    try {for (i=0; i java EjExcepcionBienCadena 1Cadena 2Cadena 3Cadena 4Error: Fuera del ndice del arrayEsto se imprime siempre.

  • TECNOLGICO DE ESTUDIOS SUPERIORES DE CUAUTITLN IZCALLI

    FORMATO DE ENTREGA DEEVIDENCIAS

    Cdigo: FO-205P11000-XX

    Pgina 6de6

    throw: La sentencia throw se ejecuta para indicar que ha ocurrido una excepcin, o lanzamiento de una excepcin.La sentencia throw especifica el objeto que se lanzar. La forma general de la sentenciathrow es:

    throw ObjetoThrowable;

    // Ejemplo de tratamiento de excepciones con throw

    class UseThrows{static char prompt(String str) throws java.io.IOException{System.out.println(str+ ": ");return (char) System.in.read();}}public class PruebaUseThrows{public static void main(String args[]){char ch;try{ch=UseThrows.prompt("Escriba una letra");}catch( java.io.IOException exc){System.out.println("Excepcion de entrada-Salida");ch='X';}} // main} //clase

    BibliografaGuerrero, I. A. (s.f.). Obtenido de http://www.cc.uah.es/jlcastillo/POO/media/JavaCap4.pdf

    (s.f.). Obtenido de http://www.cc.uah.es/jlcastillo/POO/media/JavaCap4.pdf