Python设计模式

Python设计模式:持续更新中

上一篇文章:
Python模块

下一篇文章:
Python异常处理

1、单例模式

实例:

class Singleton(object):
    #私有类属性,存储唯一的实例对象
    __instance=None
    def __new__(cls, *args, **kwargs):
        if not cls.__instance:
            #如果没有实例化,就去实例化
            cls.__instance=super().__new__(cls)
        return cls.__instance

    def __init__(self,name):
        print("__init__方法调用了")
        self.name=name


a=Singleton("aa")
b=Singleton("bb")

print(id(a))
print(id(b))

a.name="Mark"
print(b.name)

结果:

__init__方法调用了
__init__方法调用了
4472884976
4472884976
Mark
    原文作者:Mark
    原文地址: https://segmentfault.com/a/1190000015980392
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞