python 類的私有屬性和方法

python 類的私有屬性和方法

原博客地址 https://blog.csdn.net/u013372487/article/details/51729260

類的私有屬性:

__private_attrs:兩個下劃線開頭,聲明該屬性爲私有,不能在類地外部被使用或直接訪問。
在類內部的方法中使用時 self.__private_attrs。

類的方法:

在類地內部,使用def關鍵字可以爲類定義一個方法,與一般函數定義不同,類方法必須包含參數self,且爲第一個參數

類的私有方法 :

__private_method:兩個下劃線開頭,聲明該方法爲私有方法,不能在類地外部調用。
在類的內部調用 self.__private_methods

實例:
#!/usr/bin/python
# -*- coding: UTF-8 -*-

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  # 報錯,實例不能訪問私有變量

Python不允許實例化的類訪問私有數據,但你可以使用 object._className__attrName 訪問屬性,將如下代碼替換以上代碼的最後一行代碼:
…………………….

print counter._JustCounter__secretCount

這樣就可以訪問私有屬性了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章