【发布时间】:2020-12-11 09:18:47
【问题描述】:
为什么需要B 中的构造函数?
IntelliJ 建议删除=null,因为它可能是多余的,因为它是通过A 中的给定构造函数初始化的。
但是,这种删除(可能也由编译器执行)然后(可能)需要 B 中的构造函数。
还有其他解释吗?
public abstract class A {
private Object foo = null;
public A(Object foo){this.foo=foo;}
}
public class B extends A {
public B(Object foo){super(foo);}
}
【问题讨论】:
-
如果B没有构造函数,怎么调用父类构造函数?
标签: java inheritance constructor