1. 程式人生 > >設計模式--備忘錄模式

設計模式--備忘錄模式

定義:要保證被儲存的物件不能被物件從外部訪問,目的是保護好被儲存的這些物件的狀態的完整性以及內部實現不向外面暴露。 使用場景: ①需要儲存一個物件在某個時刻的狀態或部分狀態。 ②一個物件不希望外界直接訪問內部狀態,通過中間物件可以直接訪問其內部狀態。//這一點和builder模式的理念相同。 優點:能夠進行狀態的恢復 , 使用者不用關心儲存的細節。 缺點:類成員增多。

角色: originator:根據需要,儲存自身的某些狀態。可以建立memento的物件。 memento:備忘錄,儲存originator中的狀態。這隻可以通過originator進行訪問。 caretaker:負責儲存memento,但是不能直接對備忘錄進行操作和訪問,只是儲存memento物件。

例子: 備忘錄 在這裡插入圖片描述 需要儲存狀態的類 在這裡插入圖片描述 需要儲存備忘錄的類 在這裡插入圖片描述 使用 在這裡插入圖片描述