1类方法让类模板具有记忆力”。
类模板就是我们所定义的类。在普通情况下,不使用类方法对类进行实例化,类本身是不具有记忆性的。只是当一个静态模板被套用多次而已。如果我们想让类在每一次实例化之后,都能记载一些记忆,就可以使用类方法:
class Num:
id = 0
def __init__(self):
self.num = self.get_num()
@classmethod
def get_num(cls):
cls.id += 1
return cls.id
num1 = Num()
print(num1.id)
num2 = Num()
print(num2.id)
结果图:
2如果没用类方法的话就没有记忆性
class Num:
id = 0
def __init__(self):
self.num = self.get_num()
def get_num(self):
self.id += 1
return self.id
num1 = Num()
print(num1.id)
num2 = Num()
print(num2.id)
结果图: