Sådan Reparation Java : Lang NullPointerException

En Null Pointer Undtagelse eller java.lang.NullPointerException, opstår, når et program forsøger at få adgang en reference type, der ikke er blevet initialiseret.I Java, nonprimitive typer såsom String eller Integer holde en pointer til en værdi, ikke selve værdien.Hvis du forsøger at henvise til en reference type og det er ikke blevet initialiseret, er markøren ikke peger på noget, og er derfor nul.Dette almindeligvis opstår, når en reference type væltes som et argument til en metode.Den nemmeste måde at håndtere undtagelsen er at fortælle den metode, hvad skal gøre, hvis den modtager en null-pointer.

Oprettelse af en simpel klasse til at producere den NullPointerException

  1. Opret en ny klasse i din ansøgning som følger.Denne klasse er designet til at producere en null-pointer undtagelse.

    public class NullPointTest {

    public static void vigtigste (String [] args) {

    opgave (null);

    }

    public static void opgave (Integer x) {

    int y = 1 + x;

    }

    }

  2. Kør klassen.Følgende vil

    udskrive til konsollen:

    Undtagelse i tråd "main" java.lang.NullPointerException

    på NullPoint.task (NullPoint.java:10)

    på NullPoint.main (NullPoint.java:6)

  3. Bemærk problemet opstår, fordi du passerer nul og din "opgave" metoden forventer en pegepind til et heltal.

Printing en fejl for Debugging

  1. Føj følgende kode før begyndelsen af ​​"opgaven" -metoden.Dette vil give dig mulighed for at fejlsøge ved at vise dig, hvor null-værdi bliver modtaget.

    if (x == null) {

    System.out.println ("opgave () har modtaget en null værdi for x");

    }

  2. Kontroller, at din kode ser ud som følgende:

    public class NullPointTest {

    public static void vigtigste (String [] args) {

    opgave (null);

    }

    public static void opgave (Integer x) {

    if (x == null) {

    System.out.println ("opgave () har modtaget en null værdi for x");

    }

    int y = 1 + x;

    }

    }

  3. Kør klassen.Følgende bør udskrives til skærmen i stedet for undtagelsen: ". Opgave () har modtaget en null-værdi for x"

Håndtering af Undtagelse

  1. Tildel en standard værdi, når en null-værdi passeres ved at tilføje følgende til begyndelsen af ​​"opgaven" -metoden.

    if (x == null) {

    x = 1;

    }

  2. Kontroller, at din kode ser ud som følgende:

    public class NullPointTest {

    public static void vigtigste (String [] args) {

    opgave (null);

    }

    public static void opgave (Integer x) {

    if (x == null) {

    x = 1;

    }

    int y = 1 + x;

    }

    }

  3. Kør klassen.Du bør ikke længere se NullPointerException fordi x nu peger på 1.

186
0
2
Java Programmering