Excepciones Java

Páginas: 7 (1660 palabras) Publicado: 1 de junio de 2012
Excepciones en Java

Introducción - por qué usarlas?(1)
 



En el mundo de la programación hay algo que siempre ocurre: los errores en los programas. Pero ¿qué sucede realmente después de que ha ocurrido el error? ¿Qué podemos hacer con él? ¿Cómo nos damos cuenta que se ha producido? El lenguaje Java utiliza excepciones para permitir trabajar mejor con los errores.

Introducción- por qué usarlas?(2)


En la programación tradicional, la detección, el informe y el manejo de errores se convierte en un código muy liado. En pseudo-código:
leerFichero { abrir el fichero; determinar su tamaño; asignar suficiente memoria; leer el fichero a la memoria; cerrar el fichero; }



A primera vista esta función parece bastante sencilla, pero ignora todos aquello errorespotenciales.
    

¿Qué sucede si no se puede abrir el fichero? ¿Qué sucede si no se puede determinar la longitud del fichero? ¿Qué sucede si no hay suficiente memoria libre? ¿Qué sucede si la lectura falla? ¿Qué sucede si no se puede cerrar el fichero?



Para responder a estas cuestiones dentro de la función, tendríamos que añadir mucho código para la detección y el manejo de errores. Introducción - por qué usarlas?(3)


En caso de no tenerlas, como en otros lenguajes de programación como Perl, tendremos que utilizar incómodos bloques if para controlar los errores (peor, podemos elegir ignorar que estos errores pueden occurrir). Algo parecido a esto:
class InputFile { FileInputStream fis; InputFile(String filename) { fis = new FileInputStream(filename); if (fis ==file_not_found) { System.out.println(“Error!, el fichero no existe”); return; } else if (fis == sin_memoria) { System.out.println(“Error, sin memoria”); return; } else if… (muchos más aún…) } }

Introducción - por qué usarlas?(4)


Mediante el uso de excepciones para controlar errores, los programas Java tienen las siguientes ventajas frente a las técnicas de manejo de errorestradicionales.


Separar el Manejo de Errores del Código "Normal“.


Estará en una zona separada donde podremos tratar las excepciones como un código ‘especial’. podemos propagar el error a la primera función que llamó a las diversas funciones hasta que llegamos al error. Gracias a esto tenemos todos los posibles errores juntos y podemos pensar una manera de tratarlos que sea adecuado.

Propagar los Errores sobre la Pila de Llamadas




Agrupar Errores y Diferenciación.


¿Qué es una excepción?


Una excepción es un evento que ocurre durante la ejecución del programa que interrumpe el flujo normal de las sentencias.
O

sea, algo que altera la ejecución normal.



Muchas clases de errores pueden generar excepciones -- desde problemas de hardware, como laavería de un disco duro, a los simples errores de programación, como tratar de acceder a un elemento de un array fuera de sus límites.

Jerarquia de excepciones de Java

FileNotFoundException

En rojo: son las excepciones que es obligatorio controlar. Checked exceptions En azul: son las excepciones que no es obligatorio controlar. Unchecked exceptions

Uso de Excepciones Java (1)


Estecódigo
public class Hello { public static void main(String argv[]){ int uno_diez[] = new int[10]; uno_diez[12] = 10; } }



Produciría esto. Qué podemos hacer al respecto?


Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 12 at Hello.main(Hello.java:7)



Podemos decirle al compilador que queremos tratar esa excepción, y aunque ocurra, el programa noterminará y haremos lo que queremos con ella.

Uso de Excepciones Java (2)


Y lo haríamos así, de manera que el programa no finalizaría con ese error, sino que podemos personalizar un mensaje y decidir si continuar o no.
public class Hello { public static void main(String argv[]){ int uno_diez[] = new int[10]; try { uno_diez[12] = 10; } catch(java.lang.ArrayIndexOutOfBoundsException) {...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • excepciones java
  • Java Excepciones
  • Excepciones java
  • Java excepcion
  • Excepciones Java
  • Excepciones En Java
  • Excepciones java
  • excepciones en java

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS