我正在阅读关于类的Python文档,并且遇到了我不确定的这一段:
派生类可以覆盖其基类的方法.因为方法在调用同一对象的其他方法时没有特殊权限,所以调用同一基类中定义的另一个方法的基类方法最终可能会调用覆盖它的派生类的方法.(对于C++程序员:Python中的所有方法都是虚拟的.)
例:
class A:
def foo(self):
self.bar()
def bar(self):
print "from A"
class B(A):
def foo(self):
self.bar()
def bar(self):
print "from B"
Run Code Online (Sandbox Code Playgroud)
这是否意味着A类对象obj = A()可以某种方式最终"从B"打印?我读得对吗?如果这没有意义,我道歉.关于python如何处理继承和覆盖,我有点困惑.谢谢!