【发布时间】:2018-10-12 17:24:21
【问题描述】:
我们可以在抽象类中有构造函数吗?
如果是,那有什么用,因为我们无法实例化抽象类,构造函数永远不会调用。
【问题讨论】:
-
“构造函数”并不是一个好名字。它表明它负责构造(创建)对象,但事实并非如此。
new关键字负责创建(未初始化)对象,构造函数代码负责初始化(设置)该对象。所以抽象类中的构造函数只是初始化过程的一部分,它可以是构造子类实例的一部分。 -
Rohit - 不要从 Pshemo 上面的评论中得到你错误地使用了这个词的印象。你没有。只是从 Java(或其他几种语言)的角度来看,这个术语本身有点不正确,
initializer本来是一个更好的术语(因为他/她给出的原因)。但这不是被使用的术语。 :-) -
感谢@T.J.Crowder
标签: java object constructor abstract-class instantiation