单例模式
单例模式,是一种减轻内存负担的设计模式。如果创建的对象在以前创建过,则直接指向该内存地址,而不是再开辟一块内存地址。
eg:
class Foo: __v=None @classmethod def get_instancd(cls): if cls.__v: return cls.__v else: cls.__v=Foo() return cls.__v foo1=Foo.get_instancd() print (foo1) foo2=Foo.get_instancd() print (foo2) foo3=Foo.get_instancd() print (foo3) #运行结果 <__main__.Foo object at 0x00000175D94B09B0> <__main__.Foo object at 0x00000175D94B09B0> <__main__.Foo object at 0x00000175D94B09B0>
由以上运行结果做可知,分别用foo1,foo2,foo3实例化类Foo,而在内存中只创建了一块内存空间,其他的均指向了该内内存空间。