NullPointerException: Substituindo o método de chamada de construtor da classe Base na classe Derived
Eu tenho este trecho de código:
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();
}
}
Ao executar o código, recebi uma exceção:
Exception in thread "main" java.lang.NullPointerException
at Derived.method(Main.java:22)
at Base.<init>(Main.java:5)
at Derived.<init>(Main.java:17)
at Derived.main(Main.java:27)
Eu não consigo entender por que háNullPointerException
e astackTrace
da exceção. Alguém poderia me ajudar a entender?
Você pode verificar o códigoAqui.