Diccionario de Excepciones

Todas las excepciones que aparecen en las tareas y en los códigos interpretados, con su significado en castellano, cuándo saltan y en qué páginas se usan.

Excepciones

Checked: Java obliga a capturarlas (try-catch) o declararlas (throws). Unchecked: no es obligatorio.

Excepción Significado Cuándo salta Dónde aparece
ExceptionChecked Excepción genérica Es la clase padre de casi todas las excepciones que se pueden capturar. Al hacer catch (Exception e) se atrapa cualquier error, sin distinguir cuál ha sido. Tarea 3
IOExceptionChecked Error de entrada/salida Falla cualquier operación de lectura o escritura: ruta que no existe, disco no accesible, permisos, fichero cerrado... Es obligatorio capturarla con try-catch o declararla con throws. Tarea 3 Tarea 5 Tarea 6 Tarea 7 Tarea 8 Tarea 9 Tarea 10 Tarea 11 Tarea 12 Tarea 13 Tarea 14 Tarea 15 Tarea 16 Tarea 17 Tarea 18 Tarea 19 Interpretación
FileNotFoundExceptionChecked Fichero no encontrado Es hija de IOException. Salta al abrir un flujo (FileReader, FileInputStream...) sobre un fichero que no existe o que no se puede abrir. Si se captura junto a IOException, va primero. Interpretación (págs. 14 y 14-15)
EOFExceptionChecked Fin de fichero alcanzado Es hija de IOException. Salta al intentar leer más datos de los que quedan con readUTF(), readInt(), readObject()... En nuestros códigos se usa para saber cuándo terminar el bucle de lectura. Ojo: read() de FileReader no la lanza, devuelve -1. Tarea 13 Tarea 15 Tarea 16 Interpretación
ClassNotFoundExceptionChecked Clase no encontrada Salta en readObject() cuando Java no encuentra la clase del objeto que se está leyendo (por ejemplo, Alumno). No es hija de IOException, por eso se captura con multicatch: IOException | ClassNotFoundException. Tarea 15 Tarea 16 Interpretación
StreamCorruptedExceptionChecked Flujo de objetos corrupto Es hija de IOException. Salta al leer objetos si la cabecera del fichero no es la esperada; ocurre al añadir objetos con un ObjectOutputStream normal, que escribe una segunda cabecera. Es el problema que resuelve MiObjectOutputStream. Tarea 16 (problema que resuelve) Interpretación
SecurityExceptionUnchecked Excepción de seguridad Salta cuando un gestor de seguridad o los permisos del sistema no permiten la operación. Al ser RuntimeException, declararla en el throws es opcional, como en el constructor protegido de MiObjectOutputStream. Tarea 16 Interpretación
NullPointerExceptionUnchecked Puntero nulo Salta al usar un objeto que vale null. Por ejemplo, listFiles() devuelve null si la ruta no existe o no es un directorio; por eso se comprueba contenido != null antes de recorrerlo. Tarea 1 (se evita con la comprobación)

Jerarquía

Así se relacionan entre sí. Una excepción hija se puede capturar con el catch de cualquiera de sus padres.

Árbol de herencia
Throwable └─ Exception ├─ IOException │ ├─ FileNotFoundException │ ├─ EOFException │ └─ StreamCorruptedException ├─ ClassNotFoundException └─ RuntimeException ├─ NullPointerException └─ SecurityException