【发布时间】:2021-07-24 21:43:04
【问题描述】:
假设有两个类 A 和 B,B 继承了 A。
现在我们还没有为 A 创建一个构造函数。
但另一方面,我们为 B 创建了一个构造函数,并没有调用 A 类的构造函数。
然后会发生什么以及为什么?
编辑:我创建这个问题主要是考虑 java 中的问题
【问题讨论】:
-
这取决于语言。有些可能隐式调用基本构造函数,有些可能需要您显式调用。您可能想指定您感兴趣的语言。
-
这能回答你的问题吗? Will the base class constructor be automatically called?。对于 java stackoverflow.com/questions/34488484/…。但是大多数其他oo语言的原理也是一样的
-
是的,实际上我在考虑java中的问题。这个问题在我脑海中有一段时间,所以我运行了不同的代码来检查它是如何工作的。现在我清楚地了解了工作原理,我尽力解释它,以便像我这样的其他人从中受益。
-
每个类都有一个构造函数,每个子类构造函数调用一个超级构造函数(即使只是隐式的)。
标签: java inheritance constructor default super