Python中不存在真正的私有方法。爲了實現相似於c++中私有方法,能夠在類的方法或屬性前加一個「_」單下劃線,意味着該方法或屬性不該該去調用,它並不屬於API。python
以"__"兩個下劃線開始的方法時,這意味着這個方法不能被重寫,它只容許在該類的內部中使用c++
讓咱們來看一個例子:code
class A(object): def __method(self): print "I'm a method in A" def method(self): self.__method() a = A() a.method()
輸出是這樣的:blog
$ python example.py I'm a method in A
很好,出現了預計的結果。
class
咱們給A添加一個子類,並從新實現一個__method:
object
class B(A): def __method(self): print "I'm a method in B" b = B() b.method()
如今,結果是這樣的:
方法
$ python example.py I'm a method in A