Aus objektorientierter Sicht gibt es keine Sprachfunktion, die den privaten Zugriff auf Klassenmitglieder erzwingt (sie von außerhalb der Klasse verbirgt). Konventionell geben ein oder zwei Unterstriche (_
) am Anfang eines Mitgliedsnamens an, dass es privat ist / nicht von außen zugänglich sein darf, verbieten jedoch diesen Zugriff insgesamt. Kippen.
"We are all (consenting) adults here" --Guido van Rossum (Python-Sprachautor) oder die Python-Community
class Person:
#Private Funktion (_Ist ein)
def _privateFun(self):
print("private!")
#Private Funktion (_2)
def __morePrivateFun(self):
print("secret!")
target = Person()
target._privateFun() # OK
target.__morePrivateFun() #Das ist NG
target._Person__morePrivateFun() # OK
Recommended Posts