Excepciones Java

Páginas: 7 (1623 palabras) Publicado: 24 de abril de 2012
Excepciones

Laboratorio de S oftware – S egundo S emestre – 2005 – Prof. Claudia Queiruga

1

Excepciones
Una excepción es un evento o problema que ocurre durante la ejecución de un programa y que interrumpe el flujo normal de ejecución de instrucciones. Una excepción, interrumpe el procesamiento normal porque no cuenta con la información necesaria para resolver el problema, en elcontexto en que sucedió. Todo lo que se puede hacer es abandonar dicho contexto y pasar el problema a un contexto de más alto nivel. Java usa excepciones para proveer manejo de errores a sus programas. Ej.: acceso a posiciones inválidas de un arreglo, falta de memoria en el sistema, abrir un archivo inexistente en el file system, ejecutar un query en una tabla inexistente de una bd, hacer un casting aun tipo de dato inapropiado, etc. En Java, cuando se dispara una excepción, ocurre lo siguiente: 1) se crea un objeto excepción en la heap, con el operador new, como cualquier objeto Java, 2) luego, se interrumpe la ejecución y el objeto excepción es expulsado del contexto actual. En este punto, comienza a funcionar el mecanismo de manejo de errores: buscar un lugar apropiado donde continuar laejecución del programa; el lugar apropiado es el manejador de excepciones, cuya función es recuperar el problema.
Laboratorio de S oftware – S egundo S emestre – 2005 – Prof. Claudia Queiruga
2

Excepciones
En Java las excepciones se clasifican en: Verificadas en Compilación (checked exception): son errores que el compilador verifica y que pueden recuperarse. Java requiere que los métodos quedisparán excepciones, las capturen y manejen el error o, especifiquen todas las excepciones checked que pueden producirse dentro de su alcance. Por ej.: al intentar abrir un archivo en el file system, podría dispararse una excepción, ya que el archivo puede no existir, en ese caso una solución posible es pedirle al usuario que ingrese un nuevo nombre; otro ej. es el envió de una sentencia sqlerrónea a la base de datos. No-Verificadas en Compilación (unchecked exception): representan errores de programación difíciles de preveer. Son excepciones disparadas automáticamente por el sistema de ejecución de JAVA. Por ejemplo, las excepciones aritméticas (división por cero), excepciones de referencias nulas (acceso a un objeto mediante un puntero nulo), excepciones de indexación (acceso a unelemento de un arreglo con un índice muy chico ó demasiado grande) y error de casting. JAVA no obliga que éstas excepciones sean especificadas, ni capturadas para su manejo.
Laboratorio de S oftware – S egundo S emestre – 2005 – Prof. Claudia Queiruga
3

Ejemplo
import java.io.*; public class InputFile { private FileReader in; throws FileNotFoundException public InputFile (String filename) {in=new FileReader(filename); } throws IOException public String getWord() { int c; StringBuffer buf=new StringBuffer(); do { c=in.read(); if (Character.isWhitespace((char)c)) return buf.toString(); else buf.append((char)c) } while (c!=-1) return buf.toString(); } Si compilamos la clase InputFile, el compilador nos da los siguientes dos errores: InputFile.java: 11: Warning: Exceptionjava.io.FileNotFoundException must be caught, or it must be declared in throws clause of this method. in=new FileReader(filename); InputFile.java: 19: Warning: Exception java.io.IOException must be caught, or it must be declared in throws clause of this method. c=in.read(); El compilador detecta que tanto el constructor de la clase InputFile como el método getWord, no especifican ni capturan las excepciones que segenerán dentro de su alcance, por lo tanto rechaza la compilación.
4

}

Laboratorio de S oftware – S egundo S emestre – 2005 – Prof. Claudia Queiruga

Ejemplo
in=new FileReader(filename); El nombre pasado como parámetro al constructor de la clase FileReader no existe en el file system, por tanto el constructor dispará la excepción: java.io.FileNotFoundException. c=in.read(); El método...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

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

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS