Miten korjaus Java : Lang NullPointerException

nollaosoittimen Poikkeus, tai java.lang.NullPointerException, tapahtuu, kun sovellus yrittää käyttää viittaus tyyppi, jota ei ole alustettu.Javassa nonprimitive tyyppejä, kuten merkkijono tai kokonaisluku pitää osoittimen arvoa, ei arvo sinänsä.Jos yrität viitata viittaus tyyppi ja se ei ole alustettu, osoitin ei osoita mitään, ja on näin ollen pätemätön.Tämä yleensä tapahtuu, kun viitetyypin ollaan välitetään argumenttina menetelmää.Helpoin tapa käsitellä poikkeus on kertoa menetelmän mitä tehdä, jos se saa nollaosoittimen.

luominen Yksinkertainen luokan tuottaa NullPointerException

  1. Luo uusi luokka sovelluksessa seuraavasti.Tämä luokka on suunniteltu tuottamaan nollaosoittimen poikkeus.

    public class NullPointTest {

    public static void main (String [] args) {

    tehtävä (nolla);

    }

    public static void tehtävä (kokonaisluku x) {

    int y = 1 + x;

    }

    }

  2. Suorita luokka.Seuraavat tulostaa konsoliin:

    Poikkeus thread "main" java.lang.NullPointerException

    klo NullPoint.task (Null

    Point.java:10)

    klo NullPoint.main (NullPoint.java:6)

  3. Ilmoitus ongelma ilmenee, koska olet ohimennen null ja teidän "tehtävä" menetelmä odottaa osoitin kokonaisluku.

Tulostus Error virheenkorjaus

  1. Lisää seuraava koodi ennen alkua "tehtävä" menetelmää.Näin voit debug näyttämällä jos nolla vastaanotetaan.

    jos (x == null) {

    System.out.println ("tehtävä () on saanut nolla x");

    }

  2. Tarkista, että koodi näyttää seuraavalta:

    public class NullPointTest {

    public static void main (String [] args) {

    tehtävä (nolla);

    }

    public static void tehtävä (kokonaisluku x) {

    jos (x == null) {

    System.out.println ("tehtävä () on saanut nolla x");

    }

    int y = 1 + x;

    }

    }

  3. Suorita luokka.Seuraavat tulee tulostaa näytön sijasta poikkeus: "tehtävä () on saanut nolla x."

käsittely Poikkeus

  1. Määritä oletusarvo kun nolla arvo välitetään lisäämällä seuraavat alkuun "tehtävä" menetelmää.

    jos (x == nolla) {

    x = 1;

    }

  2. Tarkista, että koodi näyttää seuraavalta:

    public class NullPointTest {

    public static void main (String [] args) {

    tehtävä (nolla);

    }

    public static void tehtävä (kokonaisluku x) {

    jos (x == null) {

    x = 1;

    }

    int y = 1 + x;

    }

    }

  3. Suorita luokka.Sinun ei pitäisi enää nähdä NullPointerException koska X nyt viittaa 1.

878
0
2
Java Ohjelmointi