Dziedziczenie prywatnych i chronionych metod w Pythonie
Wiem, że w Pythonie nie ma „prawdziwych” prywatnych / chronionych metod. To podejście nie ma niczego ukrywać; Chcę tylko zrozumieć, co robi Python.
class Parent(object):
def _protected(self):
pass
def __private(self):
pass
class Child(Parent):
def foo(self):
self._protected() # This works
def bar(self):
self.__private() # This doesn't work, I get a AttributeError:
# 'Child' object has no attribute '_Child__private'
Czy to zachowanie oznacza, że metody „chronione” zostaną odziedziczone, ale „prywatne” w ogóle nie będą?
A może coś przegapiłem?