大話設計模式十八 備忘錄模式(如果再回到從前)

2021-09-01 19:51:24 字數 987 閱讀 6930

備忘錄模式就是把儲存的細節封裝在memento中。

應用場景:memento模式比較適用於需要維護或記錄屬性歷史的類。

主要缺點:角色狀態需要完整的儲存到備忘錄物件中,如果狀態資料很大很多,將會非常的消耗資源。

public class gamerole 

public string getname()

public void setname(string name)

public int getvitality()

public void setvitality(int vitality)

public int getattrack()

public void setattrack(int attrack)

public int getdefence()

public void setdefence(int defence)

// 初始狀態

public void init()

// 與boss大戰後狀態

public void fight()

public void show()

public memento creatememento()

public void backupfrommemento(memento m)

}public class caretaker

public void setmemento(memento memento)

}public class memento

public int getattrack()

public int getdefence()

public memento()

public memento(int vit, int attrack, int defence)

}public class momentomain

}

大話設計模式 備忘錄模式

一 備忘錄模式 在不破壞封裝的前提下,捕獲乙個物件的內部狀態,並在該物件之外儲存這個狀態。這樣以後就可以將該物件恢復到原先儲存的狀態。二 示例 data public class memento data public class originator public void setmemento ...

大話設計模式之備忘錄模式

備忘錄模式就是把乙個狀態儲存在乙個類當中,需要用的時候,拿出來。例子如下 主介面類 一共有四個類 主角類originator記錄主角基本資訊,記憶類memento,管理者類caretaker,主函式類main package mementopattern public class main publ...

設計模式 備忘錄模式

錄入大批人員資料。正在錄入當前人資料時,發現上乙個人的資料錄錯了,此時需要恢復上乙個人的資料,再進行修改。word文件編輯時,突然電腦宕機或者斷電,再開啟時,可以看到word提示你恢復以前的文件。就死儲存某個物件內部狀態的拷貝,這樣以後就可以將該物件恢復到原先的狀態。源髮器類originator 備...