首页 > 其他 > 详细

类的特殊方法

时间:2018-10-08 11:16:46      阅读:124      评论:0      收藏:0      [点我收藏+]
```# # 静态方法(只是名义上归类管理,但实际上在今天方法里无法访问类或实例中的任何属性) 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

类的特殊方法

原文:http://blog.51cto.com/12992048/2295233

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!