EXCEPCIONES en JAVA





EXCEPCIONES en JAVA

Una excepción es una condición anormal que surge en una secuencia de código durante la ejecución. La gestión de excepciones lleva a la gestión de errores en tiempo de ejecución. Cuando surge una condición excepcional se crea un objeto Exception.

El trabajo con excepciones se realiza mediante las siguientes palabras clave:

try              Tiene el código de ejecución, si se produce un error lanza (throw) una   excepción que será capturada.

catch         Captura la excepción  lanzada por try que le precede. Puede capturar más de una excepción, es decir que se pueden añadir.

finally    La excepción es tratada en un gestor por omisión.

 

SINTAXIS DE EXCEPCIONES:

     try{
Bloque de código;
}
catch(TipoExcepcion1 e){
gestión de la excepción;
}
catch(TipoExcepcion2  e){
gestión de la excepción;
throw(e);
}
finally{}

EJEMPLO: Se produce una excepción y por tanto mostrara la línea de catch, (en pantalla veremos solo el mensaje división por cero. Si todo va bien veríamos el resultado de la división.

     class excep{
public static void main(String args[]){
try{
int a=42/0;
System.out.println(a);
}

           catch(ArithmeticException e){
System.out.println(“división por cero”);
}
}
}   

LISTA DE EXCEPCIONES:

Excepciones que incorpora Java 1.2

a.) Clases de Error

LinkageError: Una clase no satisface la dependencia que tiene respecto a otra.

  • ClassCircularityError: Se detectó una herencia circular entre clases.
  • ClassFormatError: Una clase cargada no ha sido incompletamente descrita.
    • UnsupportedClassVersionError: La versión de una clase no es correcta.
  • ExceptionInInitializerError: Error al iniciar un miembro static.
  • IncompatibleClassChangeError: En una clase, su interfaz no es igual al declarado
    • AbstractMethodError: Se ha invocado un método abstracto.
    • IllegalAccessError: La aplicación intentó acceder a algún miembro no visible.
    • InstantiationError: Se intentó instanciar una clase abstracta o interfaz.
    • NoSuchFieldError: No se encontró determinado atributo.
    • NoSuchMethodError: No se encontró determinado método.




  • NoClassDefFoundError: No se encontró una clase cuando se necesitaba.
  • UnsatisfiedLinkError: Se encontró un enlace insatisfecho en un método nativo.
  • VerifyError: Se ha producido un error de verificación al cargar una clase.

ThreadDeath: Se ha lanzado en el thread víctima tras llamar a stop().

VirtualMachineError: La máquina virtual se ha averiado o quedado sin recursos.

  • InternalError: Error interno en tiempo de ejecución.
  • OutOfMemoryError: El lector ha agotado la memoria.
  • StackOverflowError: Desbordamiento de pila. ¿Recursión infinita?.
  • UnknownError: Grave error desconocido.

b.) Clases de Exception

CloneNotSupportedException: No se pudo copiar un objeto mediante clone().

IllegalAccessException: Algún método invocado es no visible.

InstantiationException: Se ha intentado instanciar una interfaz o una clase abstracta.

InterruptedException: Cuando se invoca a interrupt() sobre un thread dormido.

NoSuchFieldException: La clase no tiene un atributo con ese nombre.

NoSuchMethodException: La clase no tiene un método con ese nombre.

c.) Clases de RuntimeException

ArithmeticException: Error de cálculo (como división por cero…).

ArrayStoreException: Intento de almacenar un objeto equivocado en un vector.

ClassCastException: Intento de conversión inválida.

IllegalArgumentException: Se ha pasado un argumento inválido a un método:

  • IllegalThreadStateException: Un thread no estaba en el estado adecuado.
  • NumberFormatException: Una cadena contenedora de un número, no lo contiene.

IllegalMonitorStateException: Se ha usado wait/notify fuera de código sincronizado.

IllegalStateException: Método invocado en un momento inapropiado.

IndexOutOfBoundsException: Acceso a un vector fuera de sus límites:

  • ArrayIndexOutOfBoundsException: Idem, para una matriz.
  • StringIndexOutOfBoundsException: Idem, para una cadena.

NegativeArraySizeException: Intento de creación de un vector de tamaño negativo.

NullPointerException: Se ha usado una referencia null para acceder a un campo.

SecurityException: Algo ha sido vedado por el sistema de seguridad.

UnsupportedOperationException: Una operación invocada no se soporta.





También te podría gustar...

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *