首页 > 代码库 > 单例模式{设计原理}

单例模式{设计原理}

class Cpp(object):
  """单例模式实现"""
def __new__(cls, *args, **kwargs): if not hasattr(Cpp, "_instance"): cls._instance = super(Cpp,cls).__new__(cls, *args, **kwargs) return cls._instance

如果没有创建对象,就创建对象_instance,如果类里面有_instance实例,直接使用,不再次创建,实现了创建唯一一个实例,即单例模式。

一、 __new__(cls,*args, **kwargs)方法是创建一个实例的方法,而__init__(self,*args, **kwargs),是对__new__方法创建的实例进行初始化操作,增加实例的属性。

二、类的属性,是所有对象共享的,即增加一个类的属性时,此时所有的对象都会增加这个类的对象。

单例模式{设计原理}