學習設計模式 備忘錄模式

2021-07-29 17:46:04 字數 476 閱讀 3256

說明:(定義)在不破壞封裝性的前提下,捕獲乙個物件內部狀態,並在物件之外儲存這個狀態。這樣以後就可以將該物件恢復到原來的模樣。

需求:購買商品時,儲存商品購買時的資訊,以便使用者可以通過快照功能檢視商品以前的資訊。

解決方式:

a.      定義乙個備忘錄類(商品資訊);

b.      定義乙個備忘錄管理類,用於儲存備忘錄當前狀態的資訊(商品資訊資料快照);

c.      定義乙個發起類,用於建立備忘錄類,儲存備忘錄到備忘錄管理類,還原備忘錄功能;

d.      客戶端例項化發起類,通過發起類將初始化到備忘錄資料,將備忘錄儲存到備忘錄管理類,更改備忘錄資料,通過備忘錄管理還原備忘錄資料。

需求變更:新增備忘錄資料

解決方式:

修改備忘錄類、發起者類

類圖:

設計模式學習 備忘錄模式

備忘錄模式 在不破壞封裝性的前提下,捕獲乙個物件的內部狀態,並在該物件之外儲存這個狀態,這樣以後就可以將該物件恢復到原先儲存的狀態 originator 發起人,負責建立乙個備忘錄memento,用以記錄當前時刻他的內部狀態,並可使用備忘錄恢復內部狀態,originator可根據需要覺得mement...

設計模式學習 備忘錄模式

備忘錄模式,在不破壞封裝性的前提下,捕獲乙個物件的內部狀態,並在該物件之外儲存這個狀態。這樣以後就可將該物件恢復到原先儲存的狀態。把要儲存的細節給封裝在了memento中了,哪一天要更改儲存的細節也不用影響客戶端了。應用 memento模式比較適用於功能比較複雜的,但需要維護或記錄屬性歷史的類,或者...

設計模式 備忘錄模式

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