1. 程式人生 > >類方法、例項方法和靜態方法

類方法、例項方法和靜態方法

類方法、例項方法和靜態方法,實質是記憶體空間不一樣,三種方法的建立和呼叫需要注意,同樣的,類屬性和例項屬性,類物件和例項物件都需要理解,公有屬性可以設定為類屬性,特有屬性可以設定為例項屬性,類方法、例項方法和靜態方法都放在類物件中,例項物件可直接呼叫。

 1 # coding:utf-8
 2 
 3 class Province(object):
 4     country = "中國" # 類屬性
 5     
 6     def __init__(self,name):
 7         self.name = name
 8         
 9     # 例項方法
10 def print_message(self): 11 print("例項方法") 12 13 # 類方法 14 @classmethod 15 def print_msg(cls): 16 print("類方法") 17 18 # 靜態方法 19 @staticmethod 20 def print_staticmethod(): 21 print("靜態方法") 22 23 24 p = Province("湖南省") # 建立一個例項物件,首先呼叫__new__方法開闢記憶體空間,之後呼叫__init__方法進行初始化
25 p.print_message() 26 p.print_msg() 27 p.print_staticmethod() 28 29 Province.print_msg() 30 Province.print_staticmethod() # 從以上可以看出,例項物件可以呼叫三種方法,而類物件只能呼叫類方法和靜態方法 31 32 print(p.__class__.country) 33 print(Province.country) # 從以上可以看出,例項物件和類物件都可以呼叫類屬性,只是在所區別而已 34 35