1. 程式人生 > >類的特殊方法

類的特殊方法

food cat self. def eat ini 靜態 prope ssm

```# # 靜態方法(只是名義上歸類管理,但實際上在今天方法裏無法訪問類或實例中的任何屬性) class cat(object): def __init__(self,name): self.name=name @staticmethod # 實際上和類沒關系了 def eat(self): print("%s is eating %s "%(self.name,"food")) c=cat("alex") c.eat(c) #強行有關系要把實例傳進去(其實就是一個函數) # 類方法 class cat(object): name="alex" # 類變量 def __init__(self,name): self.name=name @classmethod # 類方法只能訪問類變量,不能訪問實例變量 def eat(self): print("%s is eating %s "%(self.name,"food")) c=cat("拉大") c.eat() #強行有關系要把實例傳進去(其實就是一個函數) # 屬性方法(把一個方法變成靜態屬性) class cat(object): name="alex" # 類變量 def __init__(self,name): self.name=name self.__food=None @property # 把一個方法變成靜態屬性 def eat(self): print("%s is eating %s " % (self.name,self.__food)) @eat.setter #(修改) def eat(self,food): print("set food is " , food) self.__food=food @eat.deleter #(刪除) def eat(self): del self.__food print("刪完了") c=cat("拉大") c.eat c.eat="漢堡" c.eat del c.eat c.eat

類的特殊方法