继承的进阶---多继承新式类广度优先,多继承经典类深度优先
作者:互联网
继承的进阶
继承:单继承,多继承(有python有多继承,java没有)
类:经典类,新式类
新式类:凡是继承object类都是新式类
python3X 中所有的类都是新式类,因为python3x中的类都默认继承object
经典类:不继承object类都是新式类,只存在python2(既有新式类,又有经典类)里面,所有的类都是默认经典类。可以加object,变成新式类。
单继承:新式类,经典类查询顺序一样
自己有,先执行自己类里面的
class A:
def func(self):
print("IN A")
class B(A):
def func(self):
print("IN B")
class C(B):
def func(self):
print("IN C")
c1 = C()
c1.func()
# 结果
# IN C
自己没有了,执行父类的
class A:
def func(self):
print("IN A")
class B(A):
def func(self):
print("IN B")
class C(B):
pass
c1 = C()
c1.func()
# 结果
# IN B
</
标签:优先,进阶,继承,self,新式,func,print,class 来源: https://blog.51cto.com/u_14303514/2930419