Python 如何使用 super() 实现多重继承?
在解释 super() 的工作原理之前,我们需要了解一下 多重继承 的概念。
多重继承 :表示一个子类可以继承多个父类。
在下面的示例中,Child 类继承了 Parent 类的属性方法:
阅读更多:Python 教程
示例
class Father:
fathername = ""
def father(self):
print(self.fathername)
class Mother:
mothername = ""
def mother(self):
print(self.mothername)
class Child(Father, Mother):
def parent(self):
print("Father :", self.fathername)
print("Mother :", self.mothername)
s1 = Child()
s1.fathername = "Srinivas"
s1.mothername = "Anjali"
s1.parent()
输出
Father : Srinivas
Mother : Anjali
在下面的示例中,演示了(即) super() 如何与多重继承配合使用。
super() :可以用于替换对显式调用的调用
示例
class Father:
fathername = ""
def father(self):
print(self.fathername)
class Mother:
mothername = ""
def mother(self):
print(self.mothername)
class Child(Father, Mother):
def parent(self):
super().__init__()
print("i am here")
print("Father :", self.fathername)
print("Mother :", self.mothername)
s1 = Child()
s1.fathername = "Srinivas"
s1.mothername = "Anjali"
s1.parent()
当您运行程序时,输出将为:
输出
i am here
Father : Srinivas
Mother : Anjali
极客教程