关于python:subclass __init__覆盖了超类的

subclass __init__ overrides superclass's

本问题已经有最佳答案,请猛点这里访问。

我有一个超类和一个子类。超类包含一个包含一些属性的构造函数,子类也应该有一个初始化某些属性的构造函数。但问题是,当我在子类中创建一个uuinit_uuu方法时,它会覆盖超类的构造函数。

如何解决这一问题,使子类的构造函数不重写超类的构造函数方法?

非常感谢!


使子类调用超类__init__方法。您可以显式地执行此操作,也可以使用super函数。对于单继承这样的简单情况,两种方法都是等效的。

1
2
3
4
5
6
7
class Subclass(Superclass):
    def __init__(self):
        Superclass.__init__(self)

class Subclass(Superclass):
    def __init__(self):
        super(Subclass, self).__init__()