【发布时间】:2011-01-29 20:45:04
【问题描述】:
我想在子类中重写父类中的私有方法def __pickSide(self):。但是,子类仍然调用继承的def __pickSide(self):。如何覆盖该功能?子类的函数名与父类的函数名完全相同。
【问题讨论】:
-
请不要使用所有
__的。他们很困惑。 Python 中真的没有“私有”。他们让简单的事情看起来很混乱。请使用显示您问题的最小代码示例更新您的问题。 -
那是我遇到问题的代码......你还想要什么?我知道在 Python 中仍然可以访问“私有”函数和变量,但是在使用类时不会使用所有公共函数会使事情变得更加混乱吗?
-
“那是密码”?什么代码?您能否更新问题以实际提供实际上不起作用的实际代码示例?很难猜测您的代码是什么样的。假设事情很容易;很容易假设错误。 “你还想要什么?”代码。看看你实际上犯了什么错误,而不是我认为你犯了什么错误。
-
human.__pickSide()。这不起作用,因为它没有调用我想要的 human.__pickSide(),而是调用 gambler.__pickSide()。
-
另外,关于面向对象的谈话,类并没有真正的“功能”。他们有“方法”:P
标签: python inheritance overriding parent