关于oop:如何使一个方法只能由同一类的其他方法访问,而不能由外部世界(在python中)访问?

How to make a method ONLY accessible by other methods of same class and not outer world [in python]?

本问题已经有最佳答案,请猛点这里访问。

我有一个类定义,其中定义了两个方法。布局如下:

1
2
3
4
5
6
7
class Sample:
    def calling-Method(self):
        print"Hi"
        calledMethod()

    def called-Method(self):
        print"How are you"

我要的是不应该从班外打电话给called-Mehtod(self)。不应出现以下情况:

1
2
3
if __name__ =="__main__":
   obj = Sample()
   obj.called-Method()    #This should not allowed.

我研究发现,python并不是为了隐私。另一种选择是使用双下划线("uuuuu"),但这不是为了隐私。

在上述场景中,是否有任何方法可以显示隐私?非常感谢您的帮助。


正如您从其他OO语言所知道的那样,python不支持访问限制。请参阅此处获取更详细的解释。