标签:
单例模式,也叫单子模式,是一种常用的软件设计模式。在应用这个模式时, 单例对象的类必须保证只有一个实例存在。许多时候整个系统只需要拥有一个 全局对象,这样有利于我们协调系统整体的行为。 --以上来自维基百科
从定义上来看,这会是一个很有用的避免冲突的设计模式,相当于把所有同样资源的调用 都交给了一个资源代理。那么 Python 中该如何实现这一模式呢?
#!/usr/bin/env python # _*_ coding:utf-8 _*_ # Author: enzhi.wang class Foo: ‘单例模式‘ instance = None def __init__(self,name): self.name = name @classmethod def get_instance(cls): # cls 类名 if cls.instance: return cls.instance else: obj = cls("alex") cls.instance = obj return obj obj1 = Foo.get_instance() print(obj1) obj2 = Foo.get_instance() print(obj2)
以上代码的执行结果为:
C:\Python3.5\python.exe C:/Users/root/PycharmProjects/S14/面向对象/单例模式.py <__main__.Foo object at 0x0000000000A92588> <__main__.Foo object at 0x0000000000A92588>
标签:
原文地址:http://www.cnblogs.com/ITOps/p/5835652.html