2

Python 将在方法的类和该类的所有父类中解析方法名称,直到它解析。

这是否也适用于构造函数。即,如果一个类没有定义__init__()但它的父类定义了,会自动调用父构造函数吗?

4

1 回答 1

7

简短的回答是:的。这就是继承的工作原理。

这也是为什么当您在子类中覆盖方法时,您应该在大多数时候显式调用父构造函数(除非您出于某种原因想要这样做)。

Python中的方法解析顺序也值得学习:新样式Python类中的方法解析顺序(MRO)。它定义了解决方法的顺序(在多重继承的情况下尤其重要)。

于 2013-07-11T15:10:45.970 回答