# class Foo:
# def __init__(self,name,age):
# self.name = name
# self.age = age
#
# # foo = Foo() # foo对象,foo也是Foo类的实例
# foo1 = Foo()
# foo2 = Foo()
# foo3 = Foo()
'''
# 单例,用于永远使用同一份实例(对象)
class Foo:
def __init__(self,name,age):
self.name = name
self.age = age
def show(self):
print(self.name,self.age)
v = None
while True:
if v:
v.show()
else:
v = Foo('lroyle',18)
v.show()
'''
class Foo:
__v = None
@classmethod
def get_instance(cls):
if cls.__v:
return cls.__v
else :
cls.__v = Foo()
return cls.__v
# 现在不需要使用 类()了
foo1 = Foo.get_instance()
print(foo1) # <__main__.Foo object at 0x109679208>
foo2 = Foo.get_instance()
print(foo2) # <__main__.Foo object at 0x109679208>