NullPointerException: es una excepcion de java
que indica que un objeto se encuentra sin objeto, valga la redundancia.
Caso 1:(Objeto no inicializado) Es decir un objeto ha sido creado pero no inicializado, en java se inicializa un objeto con la palabra reservada new
, seguido del nombre del objeto que se desea instanciar.
Ejemplo:
import java.util.ArrayList;
public class TestNullException {
public static void main (String [] Args) {
ArrayList<Integer> Numeros;
Integer suma = 0;
for (Integer numero : Numeros) {//error de java.lang.NullPointerException, por no iniciar Numeros con new ArrayList<Integer>(),
suma = suma + numero;
}
System.out.println ("El sumatorio actual es: " + suma);
}
}
caso 2:(Objeto eliminado) Es decir en algún momento el objeto se ha inicializado e instanciado, pero este fue eliminado, es decir fue apuntado a null.
Ejemplo:
import java.util.ArrayList;
public class TestNullException {
class EjemploNull{
String nombre;
EjemploNull(String nombre){
this.nombre=nombre;
}
public static String GetNombre(){
return this.nombre
}
}
public static void main (String [] Args) {
EjemploNull nom=new EjemploNull("Juan");
...
...//mucho codigo utilizando nom sin problemas
...
nom=null;//por algun motivo lo pusiste en null, tal vez sin querer
...// mas codigo sin darte cuenta del error
String nuevo_nombre=nom.GetNombre();//error de java.lang.NullPointerException
...//el resto del codigo
}
}
Creo que el segundo caso puede replicar tu problema.
Espero que algo de esto te sirva.