单例模式

2019-05-21 22:24:51阅读 40评论 0

解决问题

一个全局使用的类频繁地创建与销毁导致系统开销过大,因此想要控制实例数量以节省空间

实现

```python
class animal(object):
def new(cls, *args, **kwargs):#重载new方法
if not hasattr(cls,'instance'): cls.__instance=super(animal,cls).__new(cls, *args, **kwargs)
return cls.__instance
a1=animal()
a2=animal()
print(a1)
print(a2)

结果:
<__main__.animal object at 0x02DFC390>  
<__main__.animal object at 0x02DFC3D0>  

Process finished with exit code 0

```
两个对象共用一个实例

还没有评论,来说两句吧