Question

public class Test {

    Integer i;
    int j;

    public static void main ( String [] args ) {
       Test t = new Test ();
       t.go();
    }

    public void go() {
       j=i;
       System.out.println(j);
       System.out.println(i);
    }
}

Sortie: Exception en fil java.lang.NullPointerException "main"     à Test.go (Test.java:12)     à Test.main (Test.java:8)

Était-ce utile?

La solution

C'est évidemment pas l'erreur. Vous obtiendrez un NullPointerException d'exécution parce que vous unboxing une référence null (i) dans un (j) primitive. Voir JLS §5.1.8 .

La i raison est nulle est que les champs sont initialisés par exemple à 0, null ou false par défaut.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top