Python面向物件(類的成員之方法)
阿新 • • 發佈:2018-11-07
day24
類的成員之方法
- 普通方法,儲存在類中,由物件來呼叫,self > 物件
- 靜態方法,儲存在類中,由類直接呼叫
- 類方法,儲存在類中,由類直接呼叫,cls > 當前類
1 class Foo(): 2 def bar(self): 3 print('bar') 4 5 @staticmethod 6 def sta():#靜態方法,其中self不是必須的,不需物件 7 print('123') 8 9 @staticmethod 10 defstat(a1, a2): 11 print(a1, a2) 12 13 @classmethod 14 def classmd(cls):#類方法,不依賴物件 15 print(cls) 16 print("classmd") 17 18 obj = Foo() 19 obj.bar() 20 21 #Foo.bar(obj)#首先得有物件 22 23 Foo.sta()#靜態方法不需要物件,可通過類呼叫 24 Foo.stat(1, 2) 25 26 Foo.classmd()#類方法,不依賴物件
靜態方法,儲存在類中,由類直接調,self引數不是必須的。可通過類直接呼叫。
執行結果:
bar 123 1 2 <class '__main__.Foo'> classmd Process finished with exit code 0
######## 應用場景:
如果物件中需要儲存一些值,執行某功能時,需要使用物件中的值,普通方法
不需要任何物件中的值,靜態方法