Python单例模式

day25

单例模式

 1 class Foo:
 2     __v = None
 3 
 4     @classmethod
 5     def get_instance(cls):
 6         if cls.__v:
 7             return cls.__v
 8         else:      #  cls.__v = None,创建一个对象
 9             cls.__v = Foo()
10             return cls.__v
11 #不用使用 类()
12 
13 obj1 = Foo.get_instance()
14 print(obj1)
15 obj2 = Foo.get_instance()
16 print(obj2)
17 obj3 = Foo.get_instance()
18 print(obj3)

只创建一个对象。

执行结果:

<__main__.Foo object at 0x7fa7a75258d0>
<__main__.Foo object at 0x7fa7a75258d0>
<__main__.Foo object at 0x7fa7a75258d0>

Process finished with exit code 0

 

posted on 2018-10-29 13:47  嘟嘟嘟啦  阅读(106)  评论(0编辑  收藏  举报

导航