首页 > 代码库 > python之类之多继承
python之类之多继承
class A(object): def test_func(self): print("from A") class B(A): pass # def test_func(self): # print("from B") class C(A): pass # def test_func(self): # print("from C") #多继承,2.7和3.0还是有点不一样的,2.7的经典类是深度优先,3.0的经典类也是广度优先,3.0的新式类也是广度优先,就比如类D继承C类和B类,和C类和B类分别继承A类 #如果A B C D中都有一个相同的方法,那么调用的顺序是D,C,B,A,因为我们这里是class D(C,B),所以是调用的顺序是C,B,如果是class D (B,C),那么调用的顺序就是B,C class D(C,B): pass # def test_func(self): # print("from D") d = D() d.test_func() # 1、如果类D中有test_func这个方法,那么执行该则执行的类D的方法 # from D #2、如果类D中没有test_fucn这个方法,那么首先执行的类C中test_func的方法 # from C #3、如果类C中没有test_func这个方法,那么就会执行类B中的test_func的方法 # from B #4、如果类B、C中没有test_func这个方法,那么就会执行类A中的test_func的方法 # from A
python之类之多继承
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。