废话不多说,代码如下:
#经典类 采用 DFS 深度优先,寻找方法
#但是 使用 A(Object) 新式类 之后 就会采用 广度优先BFS 寻找方法
class A:
def save(self):
print "我是A 保存方法"
class B(A):
def __init__(self):
print 'This is B'
class C(A):
def save(self):
print '我是C的保存方法'
# 这里如果把 B 写前面,那么会先对B 进行 深度优先寻找方法,那么也就会 去 B 继承的A里面 去找, 当找不到的时候,再去C里面寻找
class D(B, C):
def __init__(self):
print 'This is D'
d = D()
# 这里不会调用到C的保存方法
d.save()
#输出结果:
我是A 保存方法