1. 访问安全,其实也没有决定的安全

>>> class humer(object):
...   def __init__(self, name):
...     self.name = name
...   def num(self):
...     print self.name
...   def __inner(self):
...     print \'this is inner\'

此时访问__inner方法只能这样

>>> p._humer__inner()
this is inner
否则会报错

 

2. 在子类继承父类时,如果有相同的方法和变量的话,而我们想使用各自的方法和变量。此时就可以使用私有方法

class Foo(object):
    def __init__(self):
        self.__baz = 42
    def foo(self):
        print self.__baz

class Bar(Foo):
    def __init__(self):
        super(Bar,self).__init__()
        self.__baz = 21
    def bar(self):
        print self.__baz

>>> b = Bar()
>>> b.foo()
42
>>> b.bar()
21

#如果没有使用私有方法的话,那么foo和bar的值将都是子类的值

 

版权声明:本文为wxl-dede原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/wxl-dede/p/5360459.html