一、高级语法
1、静态方法:@staticmethod
只是类下面的一个方法,并非可以实例化方法,实际上是访问不了类中的任何属性和方法
2、类方法:@classmethod
只能访问类变量,无法访问实例变量
3、属性方法:把一个方法变成一个静态属性
@property,然后需要将方法set一下才可以使用,例如
@方法名.setter
静态属性用del 静态方法无法删除
删除静态属性,需要再建立一个属性方法,使用@方法名.deleter
示例:
class dog(object):
n=100
def __init__(self,name):
self.name=name
#静态方法
@staticmethod
def eat(self):
print("%s is a dog"%self.name)
#类方法
@classmethod
def wangwang(self):
print("%s is a animal"%self.n)
#属性方法
@property
def hehe(self):
print("%s is a animal %s"%(self.name,self.food))
@hehe.setter
def hehe(self,food):
print("%s 时代氛围&#