Python设计模式1--单例模式

系统 1409 0

设计模式的重要性,不再赘述,分方法和类型逐一记录,以备忘。

一、单例模式

 单例模式,顾名思义,python中的某个类有且仅有一个对象(实例);

1.应用场景:某个实例必须保证全局唯一性,如读取某些配置文件的实例,需要确保在任意地方都是相同配置值;

2.实现方法:使用python中的基类object中__new__();

3.代码:

            
              class singleton(object):
    def __new__(cls,*args,**kw):
        if not hasattr(cls,'_instance'):
            cls._instance = super(singleton,cls).__new__(cls)  #call the object.__new__()
        return cls._instance

class CExample(singleton):
    sharp="Ball"


if __name__ == "__main__":
    e1=CExample()
    print(e1.sharp)
    e1.sharp='circle'
    e2=CExample()
    print(e2.sharp)
    print(id(e1)==id(e2))


   
#output
ball
circle
True
            
          

 

 

 


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论