python中的類屬性,類方法,靜態方法
阿新 • • 發佈:2018-12-20
1.類屬性 就是針對 類物件 定義的屬性 使用 賦值語句 在 class 關鍵字下方可以定義 類屬性 類屬性 用於記錄 與這個類相關 的特徵 2. 類方法 就是針對 類物件 定義的方法 就是針對 類物件 定義的方法 在 類方法 內部可以直接訪問 類屬性 或者呼叫其他的 類方法
1.類方法需要用 修飾器 @classmethod 來標識,告訴直譯器這是一個類方法
2.類方法的 第一個引數 應該是 cls
由 哪一個類 呼叫的方法,方法內的 cls 就是 哪一個類的引用
這個引數和 例項方法 的第一個引數是 self 類似
提示 使用其他名稱也可以,不過習慣使用 cls 3. 通過 類名. 呼叫 類方法,呼叫方法時,不需要傳遞 cls 引數
3.靜態方法
- 在開發時,如果需要在 類 中封裝一個方法,這個方法: 既 不需要 訪問 例項屬性 或者呼叫 例項方法 也 不需要 訪問 類屬性 或者呼叫 類方法
- 這個時候,可以把這個方法封裝成一個 靜態方法
綜合案例:
""" 需求: 1.檢視幫助資訊 2.建立歷史最高分 3.建立遊戲物件,開始遊戲 """ """ 分析: 幫助資訊為 靜態屬性 最高分為類屬性 而顯示最高分為類方法 建立物件 屬性 方法 """ class Game(object): #用賦值方法建立類屬性 count = 0 #靜態屬性 @staticmethod def inf(): print("這是一個幫助資訊") #類方法 @classmethod def count_num(cls): print("最高分為%d"%cls.count) #物件屬性 def __init__(self,name): self.name = name #物件方法 def strat(self): print("遊戲開始") Game.inf() Game.count_num()