class A():
num=10
def hehe(self):
print("我是实例方法(也叫对象方法)")
@classmethod
def haha(cls):
print("我是类方法,我的第一个参数代表的是类,例如本例是A",cls.num)
@staticmethod
def heihei():
print("我是静态方法,我跟这个类没有太大关系")
a=A()
a.hehe()
a.haha()#对象(实例)访问了类方法,没出问题,因为传进去的参数虽然是对象,但是指定它属于那个类
a.heihei()
A.hehe(1)#用类名访问对象方法,第一个参数如果传过来对象是可以运行的
结果:
我是实例方法(也叫对象方法)
我是类方法,我的第一个参数代表的是类,例如本例是A 10
我是静态方法,我跟这个类没有太大关系
我是实例方法(也叫对象方法)