23种设计模式之python实现--Memento模式

来源:互联网 发布:2015年十大网络用语 编辑:程序博客网 时间:2024/05/21 04:21
#理解#Memento模式的关键是不破坏封装#Originatorclass Originator:    def __init__(self,sta):        self.state=sta    def SetMemento(self,Mem):        self.state=Mem.getState()    def CreateMento(self):        return Memento(self.state)class Memento:    def __init__(self,state):        self.SetState(state)    def getState(self):        return self.state    def SetState(self,state):        self.state=stateif __name__=="__main__":    ori=Originator("hello")    print ori.state    mem=ori.CreateMento()    ori.state="world"    print ori.state    ori.SetMemento(mem)    print ori.state

0 0
原创粉丝点击