“超级”在Python中做什么?

“超级”在Python中做什么?

在以下几个方面有什么区别:

class Child(SomeBaseClass):
    def __init__(self):
        super(Child, self).__init__()

以及:

class Child(SomeBaseClass):
    def __init__(self):
        SomeBaseClass.__init__(self)

我见过super在只有单一继承的类中使用很多。我明白为什么您会在多重继承中使用它,但不清楚在这种情况下使用它有什么好处。


喵喔喔
浏览 389回答 3
3回答

哔哔one

的好处super()在单继承中,几乎没有必要将基类的名称硬编码到每个使用其父方法的方法中。然而,几乎不可能在没有super()..这包括常见的习惯用法,如Miins、接口、抽象类等。这扩展到以后扩展您的代码。如果后来有人想编写一个扩展的类Child和混合,他们的代码将不能正常工作。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python