class Singleton(object):
__instance = None
def __init__(self):
pass
def __new__(cls, *args, **kwargs):
if not Singleton.__instance:
Singleton.__instance = object.__new__(cls,*args, **kwargs)
return Singleton.__instance
class Commoncls(object):
pass
single_obj1,single_obj2 = Singleton(),Singleton()
comm_obj3,comm_obj4 = Commoncls(),Commoncls()
single_obj1 == single_obj2
True
comm_obj1 == comm_obj2
False
新式类单例模式之 __new__()
最新推荐文章于 2022-03-07 12:29:57 发布