Java - Runtime Exception
Concepto
- 
    
Es la superclase de aquellas
excepcionesque se pueden lanzar durante el funcionamiento normal de la máquina virtual de Java.- 
        
RuntimeExceptiony sus subclases son excepciones no verificadas - 
        
Las
excepcionesno comprobadas no necesitan declararse en la cláusulathrowsde unmétodooconstructorsi pueden generarse mediante la ejecución delmétodooconstructory propagarse fuera del límite delmétodooconstructor 
 - 
        
 - 
    
Son excepciones que se pueden dejar sin tratar hasta el último momento ya que el programador no tiene la obligación de tratarlo , se pueden controlar pero el problema lo genera situaciones fuera del ámbito del usuario , están enfocadas a errores provocados por el programa
 
Ejemplos de Runtime Exceptions
NumberFormatException
- 
    
Lanzado para indicar que la aplicación ha intentado convertir una cadena a uno de los tipos numéricos, pero que la cadena no tiene el formato adecuado
 - 
    
Este error se produce cuando se da un formateo erróneo a un elemento del tipo String y se realiza una conversión a un tipo entero
- El formato numérico como elemento del tipo String esta mal editado o escrito lo que hace imposible su conversión
 
 
  String s = "984,,321";
  int num = Integer.parseInt(s);
  empleado.setSalario(num);
NullPointerException
- 
    
Se lanza esta excepción cuando se intenta acceder a una posición de memoria de un elemento tanto del tipo String como del tipo array y en ella no se encuentra ningún elemento
 - 
    
Ejemplo tipo String
 
String s = null;
s.toString();
- Ejemplo tipo Array
 
int[] ar = { 1, 2, 3, 4, 5 };
System.out.println(ar[6]);
Consejo sobre Excepciones
- 
    
Lanzar una Excepciones de un tipo distinto a la que hemos capturado , no olvidemos pasarte a esta nueva excepción a la excepciones capturadas para no perder nunca la causa original del problema
 - 
    
Ejemplo Incorrecto
 
 /**
  * No añadimos la variable 'npe' al catch
  * 
  * @throws Exception
  */
 public static void lanzarExcepcionSinDetalle() throws Exception {
  Nulo3 nulo = null;
  try {
   nulo.loQueSea();
  } catch (NullPointerException npe) {
// " MALA PRACTICA " - No le pasamos la variable 'npe' a la Excepción original para que se muestre el error 
   throw new Exception();
  }
 }
- Ejemplo Correcto
 
 /**
  * añadimos la variable 'npe' al catch
  * 
  * @throws Exception
  */
 public static void lanzarExcepcionConDetalle() throws Exception {
  Nulo3 nulo = null;
  try {
   nulo.loQueSea();
  } catch (NullPointerException npe) {
// " BUENA PRACTICA " - Le pasamos la variable 'npe' a la Excepción original para que se muestre el error 
   throw new Exception(npe);
  }
 }
      
      
      
Deja un comentario