美文网首页
行为型之六-备忘录模式

行为型之六-备忘录模式

作者: iOS_肖晨 | 来源:发表于2017-10-09 14:57 被阅读11次

    Memento(备忘录模式)

    在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。

    比如iOS对对象的归档解档。

    VC.m

    HCDGameRoll *roll = [[HCDGameRoll alloc]init];
    [roll getState];
    //把roll对象的内部状态保存到state对象中
    HCDGameState *state = [roll saveState];
    //manager管理state对象
    HCDStateManager *manager = [[HCDStateManager alloc]initWithGameState:state];
    //改变roll的内部状态
    [roll fightBoss];
    [roll getState];
    //恢复对象的内部状态
    [roll rebackState:manager.gameState];
    [roll getState];
    

    设计图

    相关文章

      网友评论

          本文标题:行为型之六-备忘录模式

          本文链接:https://www.haomeiwen.com/subject/echpyxtx.html