首页 > 其他 > 详细

【问题】多重继承时,super函数只初始化继承的第一个类,不初始化第二个类。

时间:2020-02-16 20:45:49      阅读:56      评论:0      收藏:0      [点我收藏+]
class A(object):
    def __init__(self):
        print("init class A")

class B(object):
    def __init__(self):
        print("init class B")

class C(object):
    def __init__(self):
        print("init class C")
        super(C, self).__init__()

class D(object):
    def __init__(self):
        print("init class D")
        super(D, self).__init__()
        
class E(A, B):
    def __init__(self):
        print("init class E")
        super(E, self).__init__()

class F(C, D):
    def __init__(self):
        print("init class F")
        super(F, self).__init__()

if __name__ == __main__:
    e = E()
    f = F()

运行结果:

init class E
init class A
init class F
init class C
init class D

 

问题:class A和class B没有使用super函数,多重继承时,只初始化继承的第一个类,不初始化第二个类。

【问题】多重继承时,super函数只初始化继承的第一个类,不初始化第二个类。

原文:https://www.cnblogs.com/risunlee/p/12317867.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!