NullPointerException: переопределение конструктора, вызывающего метод базового класса в производном классе

ve этот фрагмент кода:

class Base {
    public Base() {
        method();
    }

    void method() {
        System.out.println("In Base");
    }
}

class Derived extends Base {
    private String bar;

    public Derived() {
        bar="bar";
    }

    public void method() {
        System.out.println(bar.length());
    }

    public static void main(String[] args) {
        Base base=new Derived();
        base.method();
    }
}

При выполнении кода я получил исключение: я

Exception in thread "main" java.lang.NullPointerException
    at Derived.method(Main.java:22)
    at Base.(Main.java:5)
    at Derived.(Main.java:17)
    at Derived.main(Main.java:27)

Я не могу понять, почему естьNullPointerException иstackTrace исключения. Кто-нибудь может помочь мне понять?

Вы можете проверить кодВот.

Ответы на вопрос(2)

Ваш ответ на вопрос