大話設計模式 備忘錄模式

2022-03-28 17:20:20 字數 565 閱讀 9100

一、備忘錄模式:在不破壞封裝的前提下,捕獲乙個物件的內部狀態,並在該物件之外儲存這個狀態。這樣以後就可以將該物件恢復到原先儲存的狀態。

二、**示例

@data

public

class

memento

}@data

public

class

originator

public

void

setmemento(memento memento)

public

void

show()

}@data

public

class

caretaker

public

class

test

}

三、適用場景

適用於功能比較複雜的,但需要維護或記錄屬性歷史的類,或者需要儲存的屬性只是眾多屬性中的一小部分時,originator可以根據儲存的memento資訊還原到前一狀態。

使用備忘錄可以把複雜的物件內部資訊對其他的物件遮蔽起來。

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

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

設計模式 備忘錄模式

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

設計模式 備忘錄模式

備忘錄模式 memento pattern 在不破壞封閉的前提下,捕獲乙個物件的內部狀態,並在該物件之外儲存這個狀態。這樣以後就可將該物件恢復到原先儲存的狀態。涉及角色 1.original 發起人 負責建立乙個備忘錄memento,用以記錄當前時刻自身的內部狀態,並可使用備忘錄恢復內部狀態。ori...