A excepción de puntero nulo o java.lang.NullPointerException , se produce cuando una aplicación intenta acceder a un tipo de referencia que no se ha inicializado . En Java, los tipos no primitiva como String o Integer tienen un puntero a un valor, no el valor en sí . Si intenta hacer referencia a un tipo de referencia y no se ha inicializado , el puntero no apunta a nada, y por lo tanto nulo. Esto suele ocurrir cuando se pasa un tipo de referencia como argumento a un método. La forma más fácil de manejar la excepción es decirle al método de lo que debe hacer si recibe un puntero nulo . Instrucciones
Crear una clase simple para producir el NullPointerException
1
Crear una nueva clase en la aplicación de la siguiente manera . Esta clase está diseñada para producir una excepción de puntero nulo
public class NullPointTest {
void (String [] args ) { public static
tarea
(null ) .
}
público tarea static void ( Integer x ) {
int y = 1 + x;
} } < br > Página 2
Ejecutar la clase. Lo siguiente imprimirá en la consola:
Exception in thread "main " java.lang.NullPointerException
en NullPoint.task ( NullPoint.java : 10 )
en NullPoint . principal ( NullPoint.java : 6 )
3
Observe que el problema se debe a que usted está pasando nulo y el método de la " tarea " espera un puntero a un entero
< br . >
Impresión de un error de depuración
4
Agregue el código siguiente antes del inicio del procedimiento de " tarea " . Esto le permitirá depurar mostrándole donde se recibe el valor nulo.
If ( x == null) {
System.out.println ( "task () ha recibido una valor nulo para x "); }
5
Compruebe que su código es el siguiente :
public class NullPointTest {
< p > public static void main ( String [] args ) {
tarea
( null); }
público tarea static void ( Integer x ) {
< p > if ( x == null) {
System.out.println ( "task () ha recibido un valor nulo para x "); }
int y = 1 + x;
}
}
6
Ejecutar la clase. Lo siguiente debe imprimir en la pantalla en lugar de la excepción: " la tarea ( ) ha recibido un valor nulo para x . "
Manejo de la Excepción
7
Asigne un . valor por defecto cuando un valor nulo se pasa al añadir lo siguiente al principio del método de la " tarea "
if ( x == null) {
x = 1 ;
< p >}
8
Compruebe que su código es el siguiente :
public class NullPointTest
{ public static void main ( String [] args ) {
tarea
( null); }
público tarea static void ( Integer x ) {
if ( x == null) {< br >
x = 1 ; }
int y = 1 + x;
}
}
9 < p > Ejecutar la clase. Usted ya no debe ver el NullPointerException porque x ahora apunta a 1.