用途
類別方法不需要產生物件就可以直接使用. 但調用的方式是 類別名稱.類別方法
第一種方式
在class之前先定義 cls方法, 再於class中使用classmethod註明類別方法的連結
def setCount(cls,l): Pokemon.count=10 class Pokemon(): count=0 def __init__(self): print("Pokemon") setCount=classmethod(setCount) p=Pokemon() Pokemon.setCount(10) print(Pokemon.count)
第二種方式
將類別方法前加加入 @classmethod,而類別方法需註明為 cls
class Pokemon(): count=0 def __init__(self): print("Pokemon") @classmethod def setCount(cls,l): Pokemon.count=10; p=Pokemon() Pokemon.setCount(10) print(Pokemon.count)
第三種方式
將類別方法前加入 @staticmethod,而類別方法不需任何註明
class Pokemon(): count=0 def __init__(self): print("Pokemon") @staticmethod def setCount(l): Pokemon.count=10; p=Pokemon() Pokemon.setCount(10) print(Pokemon.count)