设计模式(Python语言)----单例模式(python开发设计模式)

网友投稿 340 2022-08-23


设计模式(Python语言)----单例模式(python开发设计模式)

更多信息请参考 【设计模式】

单例模式含义

保证一个类只有一个实例,并提供一个访问它的全局访问点

单例模式中的角色

单例(Singleton)

单例模式的优点

对唯一实例的受控访问单例相当于全局变量,但防止了命名空间被污染

单例模式实例

代码如下:

class Singleton: def __new__(cls,*args,**kwargs): if not hasattr(cls,"_instance"): cls._instance=super(Singleton,cls).__new__(cls) return cls._instanceclass MyClass(Singleton): def __init__(self,name): self.name=nameif __name__=="__main__": a=MyClass("zhangsan") b=MyClass("lisi") print(id(a)) print(id(b)) print(a.name) print(b.name)

执行结果如下:

28049139297602804913929760lisilisi

可以看出a,b是同一个对象,a和b的name属性当然是后赋值的sili


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Spring Cloud Eureka 搭建 & 集群方式
下一篇:设计模式(Python语言)----桥模式(python编程实战:运用设计模式)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~