单例模式共享属性
通過(guò)共享屬性達(dá)到單例模式
?
# coding=utf8class Borg(object):_state = {}def __new__(cls, *args, **kw):ob = super(Borg, cls).__new__(cls, *args, **kw)ob.__dict__ = cls._statereturn obdef __init__(self,x):self.x = xb1 = Borg(1) b2 = Borg(2)print b1.x print b2.xprint id(b1) print id(b2)結(jié)果是
可以看到共享屬性方式的單例模式,與前兩篇的不一樣,實(shí)例化多少次就有多少個(gè)對(duì)象產(chǎn)生,但每個(gè)對(duì)象的狀態(tài),也就是所有實(shí)例的屬性都是保持一致的。
總結(jié)
- 上一篇: Facebook Docusaurus
- 下一篇: 了解区块链,从挖矿开始