# 定義乙個類
class a(object):
# 類屬性
# 例項屬性
# 類方法
# 例項方法
# 靜態方法
# 類屬性,直接在類中定義的屬性是類屬性
# 類屬性可以通過類或類的例項訪問到
# 但是類屬性只能通過類物件來修改,無法通過例項物件修改
count = 0
def __init__(self):
# 例項屬性,通過例項物件新增的屬性屬於例項屬性
# 例項屬性只能通過例項物件來訪問和修改,類物件無法訪問修改
self.name = '孫悟空'
# 例項方法
# 在類中定義,以self為第乙個引數的方法都是例項方法
# 例項方法在呼叫時,python會將呼叫物件作為self傳入
# 例項方法可以通過例項和類去呼叫
# 當通過例項呼叫時,會自動將當前呼叫物件作為self傳入
# 當通過類呼叫時,不會自動傳遞self,此時我們必須手動傳遞self
def test(self):
print('這是test方法~~~ ' , self)
# 類方法
# 在類內部使用 @classmethod 來修飾的方法屬於類方法
# 類方法的第乙個引數是cls,也會被自動傳遞,cls就是當前的類物件
# 類方法和例項方法的區別,例項方法的第乙個引數是self,而類方法的第乙個引數是cls
# 類方法可以通過類去呼叫,也可以通過例項呼叫,沒有區別
@classmethod
def test_2(cls):
print('這是test_2方法,他是乙個類方法~~~ ',cls)
print(cls.count)
# 靜態方法
# 在類中使用 @staticmethod 來修飾的方法屬於靜態方法
# 靜態方法不需要指定任何的預設引數,靜態方法可以通過類和例項去呼叫
# 靜態方法,基本上是乙個和當前類無關的方法,它只是乙個儲存到當前類中的函式
# 靜態方法一般都是一些工具方法,和當前類無關
@staticmethod
def test_3():
print('test_3執行了~~~')
python類的私有屬性和方法
python 對於類的成員沒有嚴格的訪問控制限制 關於私有 屬性和私有方法,有如下要點 兩個下劃線開頭的屬性是私有的 private 其他為公共的 public 類內部可以訪問私有屬性 方法 類外部不能直接訪問私有屬性 方法 外部可以通過 類名 私有屬性 方法 名 訪問私有屬性 方法 class s...
python 類的私有屬性和方法
1.在類中以雙下劃線 開頭的屬性和方法即為私有屬性和方法,類的例項在外部無法直接呼叫,而在類中可以正常訪問 2.python的內部實現過程 3.因此a.num 會報錯,而a.a num就可以正常訪問私有屬性了 classa object def init self self.data 1 self....
Python 類屬性和類方法
僅用學習參考 使用物件導向開發,第 1 步是設計類使用類名 建立物件,建立物件的動作有兩步 物件建立後,記憶體中就有了乙個物件的實實在在的存在 例項 因此,通常也會把 建立出來的物件叫做類的例項建立物件的動作叫做例項化物件的屬性叫做例項屬性物件呼叫的方法叫做例項方法 在程式執行時 物件各自擁有自己的...