@classmethod 装饰器是 Python 中的一种方法装饰器,用于定义类方法。类方法是一种与类本身相关联的方法,而不是与类的实例相关联的方法。
类方法可以通过类名或类的实例来调用。当类方法被调用时,第一个参数将始终是类本身,通常被命名为 cls。
一般用于与实例参数无关的时候。
`class a:
name = "aa" # 类的名字
def __init__(self,name):
self.self_name = name
self.name = 'bbb'
@classmethod
def b(cls):
print("my name is %s" % cls.name )
def c(self):
print("my name is %s" % self.name)
print("my classobj_name is %s" % self.self_name)
a.b() # my name is aa
a.c(a('xxx')) # my name is bbb my classobj_name is xxx
a_ojb = a('xxx')
a_ojb.c() # my name is bbb my classobj_name is xxx`