class a:
def set(self, value):
print value+1
def set2(self, value):
self.set(value)
class b(a):
def set(self, value):
print value
if __name__ == '__main__':
i = b()
i.set2(10)
执行时,我得到的结果是10
,这意味着,b.set()
被调用了,但为什么不a.set()
因为它是用 explict 调用的self
?
PS 所以,即使类 'a' 没有方法 set(),这段代码仍然有效吗?但这是一个好的编码规则吗?