類屬性與方法
類的私有屬性
__private_attrs:兩個下划線開頭,聲明該屬性為私有,不能在類地外部被使用或直接訪問。在類內部的方法中使用時 self.__private_attrs。
類的方法
在類地內部,使用def關鍵字可以為類定義一個方法,與一般函數定義不同,類方法必須包含參數self,且為第一個參數
類的私有方法
__private_method:兩個下划線開頭,聲明該方法為私有方法,不能在類地外部調用。在類的內部調用self.__private_methods
實例
#coding=utf-8 #!/usr/bin/python class JustCounter: __secretCount = 0 # 私有變量 publicCount = 0 # 公開變量 def count(self): self.__secretCount += 1 self.publicCount += 1 print self.__secretCount counter = JustCounter() counter.count() counter.count() print counter.publicCount print counter.__secretCount # 報錯,實例不能訪問私有變量,可以使用 object._className__attrName 訪問屬性
Python不允許實例化的類訪問私有數據,但你可以使用 object._className__attrName 訪問屬性,將如下代碼替換以上代碼的最后一行代碼:
......................... print counter._JustCounter__secretCount