python设计模式

一. 单例模式

  单例模式(singleton pattern)是最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同事确保只有单个对象被创建、这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。单例模式就是一个类只能创建一个实例化对象!

注意:

  • 单例类只能有一个实例
  • 单例类必须自己创建自己的唯一实例
  • 单例类必须给所有其他对象提供这一实例

 

class Foo:
    instance = None

    def __init__(self, name):
        self.name = name

    @classmethod
    def get_instance(cls):
        if cls.instance:
            return cls.instance
        else:
            obj = cls("aaa")
            cls.instance = obj
            return obj

obj1 = Foo.get_instance()
print(obj1)

obj2 = Foo.get_instance()
print(obj2)

# 输出
<__main__.Foo object at 0x1007f9550>
<__main__.Foo object at 0x1007f9550>

  

未完待续

posted @ 2016-06-30 16:26  王永存ღ  阅读(287)  评论(0编辑  收藏  举报