class Mother(object):
def __init__(self, name):
print('Mother1')
self.name = name
print('Mother2')
class Daughter1(Mother):
def __init__(self, name, age, gender):
print('Daughter11')
self.age = age
super(Daughter1, self).__init__(name, gender)
print('Daughter12')
class Daughter2(Mother):
def __init__(self, name, gender):
print('Daughter21')
self.gender = gender
super(Daughter2, self).__init__(name)
print('Daughter22')
class Granddaughter(Daughter1, Daughter2):
def __init__(self, name, age, gender):
print('Granddaughter1')
super(Granddaughter, self).__init__(name, age, gender)
print('Granddaughter2')
if __name__ == "__main__":
granddaughter = Granddaughter('流雨亭', 28, '女')
运行结果:
Granddaughter1
Daughter11
Daughter21
Mother1
Mother2
Daughter22
Daughter12
Granddaughter2
继承顺序为:Granddaughter ——> Daugther1 ——> Daughter2 ——> mother (广度优先式查找)
参考:
https://www.cnblogs.com/TheLand/p/8310490.html
https://blog.csdn.net/weixin_31449201/article/details/80317699