Python 类的多继承

#类的多继承

'''
与c++不同,python的类经过优化,多继承时不会产生方法二义性

'''

#python中所有的类都是默认继承于object类
class A(object):
        def test(self):
                print("---a---")

class B(A):
        def test(self):
                print("----b----")

class C(A):
        def test(self):
                print("----c-----")

class D(B,C):
        def show(self):
                #python中类内部方法互相调用方式 
                self.test()


d = D()

d.show()

'''
此处d调用的是B的test()方法

类名.__mro__成员属性可以打印类中方法搜索顺序

'''

print(D.__mro__)

#强调,Python中类查找方法的顺序是固定的,不存在二义性

 

posted on 2018-09-02 16:47  寒魔影  阅读(589)  评论(0编辑  收藏  举报

导航