在 C++ 中,您可以通过在子类中将其声明为私有来禁用父类中的函数。在 Python 中如何做到这一点? IE。如何从孩子的公共界面隐藏父母的功能?
Python 中确实不存在任何真正的“私有”属性或方法。您可以做的一件事就是简单地重写子类中不需要的方法,并引发异常:
>>> class Foo( object ):
... def foo( self ):
... print 'FOO!'
...
>>> class Bar( Foo ):
... def foo( self ):
... raise AttributeError( "'Bar' object has no attribute 'foo'" )
...
>>> b = Bar()
>>> b.foo()
Traceback (most recent call last):
File "<interactive input>", line 1, in <module>
File "<interactive input>", line 3, in foo
AttributeError: 'Bar' object has no attribute 'foo'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)