2016-06-19 31 views
0

Ich bin Lernobjekt und ich versuche, eine Reference Variable als Instanz Variable zu verwenden, aber ich bekomme "java.lang.NullPointerException", auch wenn ich Wert gegeben habe. Was mache ich falsch? Hier ist mein Code;Warum erhalte ich Exception, wenn ich versuche, Instance Variable als Refrence Variable zu drucken?

public static void main(String[] args) { 

    Car car = new Car(); 
    car.brand = "Nissan"; 
    car.modelYear = 1998; 
    car.owner.name = "Marshall"; 
    System.out.println("The car brand is "+car.brand + 
      "car model is "+ car.modelYear+ 
      "cars owners name is "+ car.owner.name); 
} 

}

class Car { 
Person owner; 
String brand; 
int modelYear; 
int horsePower; 

}

class Person { 
String name; 

}

+0

Sie haben den 'Besitzer' nicht erstellt –

+0

was meinst du? Ich habe Eigentümer in der Autoklasse erklärt. Kannst du ein Beispiel geben? –

+1

Objekte werden mit 'new' wie' owner = new Person() 'erstellt, wenn Sie sie einfach deklarieren, sind sie' null' –

Antwort

1

Da car.owner nicht initialisiert wird.

car.owner = neue Person();