You are here
Excepciones en JAVA Sin categoría 

Excepciones en JAVA

Excepciones en JAVA

 

En  Java  los  errores  son  conocidos  como  excepciones. Cuando  se  produce  una excepción, se crea  un  objeto  del  mismo  tipo  de  la excepción. En lenguaje Java  las excepciones pueden manejarse con las clases que extienden el paquete Throwable de manera directa o indirecta, pero  existen  diversos tipos  de excepciones y formas  para manejarlas. La clase  Throwable, es la superclase de  todas  las clases  de  manejo  de errores.

 

 

Cuando se genera una excepción, el programa Java busca un manejador para  el error (handler). El handler es una  porción del código  que indica  el tipo de objeto correspondiente al error  que se van a ejecutar  luego  de que ocurrió el error.

 

 

Se pueden dar varios  tipos de errores:

 

 

 

  • Al tratar de  acceder   a  elementos de  arreglos con  un  índice  mayor al  del último elemento del arreglo.
  • Divisiones para  cero.

 

  • Manejo de archivos. No existe, no se tiene suficientes permisos, etc.

 

  • Errores  accediendo a bases de datos.

 

  • Errores  definidos  por    el   usuario.  Tarjeta   incorrecta,  excede    cupo    de transferencia, etc.

 

 

TIPOS DE EXCEPCIONES

 

 

 

  • Checked: son las excepciones que revisan el compilador.

 

  • Unchecked: son las  excepciones que  no  revisa  el  compilador y  se  dan  en tiempo de ejecución.  Ejemplo: RuntimeException.

 

MANEJO DE EXCEPCIONES

 

 

 

Cuando  un   programa  Java  viola   las  restricciones  semánticas  del   lenguaje  (se produce  un   error),   la  máquina  virtual  Java  comunica  este  hecho   al  programa mediante una  excepción. La aplicación Java no debe  morir  y generar un  Core (o un crash  en  caso  del  DOS), al contrario, se lanza  (throw) una  excepción y se captura (catch) para  resolver esa situación de error.

 

 

Muchas clases de errores pueden provocar una excepción, desde un desbordamiento de  memoria  o  un   disco   duro  estropeado, hasta   un   disquete  protegido  contra escritura, un intento de dividir por  cero o intentar acceder  a un vector  fuera  de sus límites.  Cuando esto  ocurre,   la  máquina virtual Java  crea  un  objeto  de  la  clase exception o error  y se notifica el hecho al sistema de ejecución.

 

 

Se dice que se ha lanzado una excepción (“Throwing Exception”).

 

 

 

Un método se dice  que  es capaz  de tratar una  excepción (“Catch  Exception”) si ha previsto el error  que se ha producido y prevé  también las operaciones a realizar para “recuperar” el programa de ese estado de error.  En el momento en que  es lanzada una  excepción, la máquina virtual Java recorre  la pila  de  llamadas de  métodos en busca de alguno que sea capaz  de tratar la clase de excepción lanzada.

 

 

Para  ello, comienza examinando el método donde ese ha producido la excepción;  si este  método no es capaz  de  tratarla, examina el método desde el que  se realizó  la llamada al método donde se produjo la excepción y así sucesivamente hasta  llegar al último de ellos. En caso de que ninguno de los métodos de la pila sea capaz  de tratar la excepción, la máquina virtual Java muestra un  mensaje  de  error  y el programa termina.

 

 

 

Los programas escritos  en Java también pueden lanzar excepciones explícitamente mediante la instrucción throw, lo que facilita la devolución de un “código de error” al método que invocó el método que causó el error.

 

 

Ejemplo:

 

 

 

public class Excepciones1 {

 

public static void main(String[] arg) {

 

metodo();

 

}

 

 

static void metodo() {

 

int divisor = 0;

 

int resultado = 100/divisor; System.out.println(“Resultado: ” + resultado); System.out.println(“Una Suma:” + (3+4));

}

 

}

 

 

 

Si intentamos ejecutar  este programa obtendremos el siguiente resultado:

Exception in thread ‘’main’’ java.lang.ArithmeticException: / by zero ……

Lo que  ha ocurrido es que  la máquina virtual Java ha detectado una  condición de error   y  ha  creado un  objeto  de  la  clase  java.lang.ArithmeticException.  Como  el método donde se ha producido la excepción no es capaz  de tratarla, se trata  por  la máquina virtual Java, que muestra el mensaje  de error  anterior y finaliza  la ejecución del programa.


 

Si quieres seguir aprendiendo con nosotros, puedes ingresar a nuestros

Cursos y Diplomados de Tecnología Web visita www.uneweb.edu.ve  para más información

Related posts