Search code examples
javaobjectprintinginstance-variables

Why do I get Exception when I'm trying to print Instance variabel as Refrence variabel?


I'm learning object and I'm trying to use a reference variable as an instance variable, but I get " java.lang.NullPointerException " even if I've given the value.

What am I doing wrong?

Here is my code:

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;
}

Solution

  • Because car.owner is not initialized.

    car.owner = new Person();