C/C++教程

类多继承C3算法

本文主要是介绍类多继承C3算法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
class H:
    def bar(self):
        print("F.bar")


class G(H):
    def bar(self):
        print("F.bar")


class F(H):
    def bar(self):
        print("F.bar")


class E(G):
    def bar(self):
        print("E.bar")


class D(F):
    def bar(self):
        print("D.bar")


class C(E):
    def bar(self):
        print("C.bar")


class B(D):
    def bar(self):
        print("B.bar")


class A(B, C, D):
    def bar(self):
        print("A.bar")


a = A()
print(A.mro())
# 结果
# [<class '__main__.A'>, <class '__main__.B'>, <class '__main__.C'>, <class '__main__.D'>, <class '__main__.F'>, <class '__main__.E'>, <class '__main__.G'>, <class '__main__.H'>, <class 'object'>]

是按照C3算法来的
下面是推倒的过程

这篇关于类多继承C3算法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!