python是在Prototype模式和Singleton模式
来源:互联网 发布:单片机继电器怎么使用 编辑:程序博客网 时间:2024/04/26 13:04
#-*-coding:utf-8-*-
'''
意图:用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象
'''
from abc import ABCMeta
import copy
class Prototype:
def shallowClone(self):
return copy.copy(self)
def deepClone(self):
return copy.deepcopy(self)
if __name__ == "__main__":
pass
'''
意图:用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象
'''
from abc import ABCMeta
import copy
class Prototype:
def shallowClone(self):
return copy.copy(self)
def deepClone(self):
return copy.deepcopy(self)
if __name__ == "__main__":
pass
#-*-coding:utf-8-*-
'''
意图:保证一个类仅有一个实例,并提供一个访问它的全局访问点
'''
class Singleton(type):
def __init__(cls, name, bases, dict): #使得不能实例化
super(Singleton, cls).__init__(name, bases, dict)
cls.instance = None
def __call__(cls, *args, **kw): #引用类时返回实例
if cls.instance is None:
cls.instance = super(Singleton, cls).__call__(*args, **kw)
return cls.instance
class MyClass(object):
__metaclass__ = Singleton
def printA4(self):
print 'this A4'
if __name__ == "__main__":
c1 = MyClass()
c2 = MyClass()
# if c1 is c2:
if id(c1) is id(c2):
print 'Same'
else:
print 'Different'
c1.printA4()
- python是在Prototype模式和Singleton模式
- 设计模式之 prototype和singleton
- Spring单例模式(singleton)和多例模式(prototype)
- Python和Singleton (单件)模式
- Python和Singleton (单件)模式
- 设计模式 (python) ---> Singleton
- Python实现Singleton模式
- Python singleton模式
- 设计模式笔记(3 PROTOTYPE & SINGLETON)
- 设计模式笔记(3 PROTOTYPE & SINGLETON)
- 设计模式笔记(3 PROTOTYPE & SINGLETON)
- Spring学习笔记 关于Spring创建Bean的模式-Singleton(单例模式)和Prototype
- Spring学习笔记 关于Spring创建Bean的模式-Singleton(单例模式)和Prototype
- 关于Spring创建Bean的模式-Singleton(单例模式)和Prototype
- SINGLETON 模式和MONOSTATE 模式
- Singleton模式和Monostate模式
- python的Singleton模式之一
- Python - 单例模式(Singleton)
- Python实现:斐波那契数列、交换两个变量的值、从一组数据中找出最大最小值
- 一种高效可伸缩的缓存设计方法
- 教务系统开发总结
- Struts2入门到精通十三——————总结
- 设计模式—外观模式
- python是在Prototype模式和Singleton模式
- android笔记2
- Java--二进制正负表示
- 手把手教你玩转SOCKET模型之重叠I/O篇(上)
- 点结构体于枚举
- 读取数据到结构体数组
- 未完,待续
- oracle之-存储结构
- SQL 笔记