備忘錄模式(Memento Pattern)保存一個對象的某個狀態,以便在適當的時候恢復對象。備忘錄模式屬于行為型模式。
在不破壞封裝的前提下,捕獲對象的內部狀態,并在對象外存儲這個內部狀態,以便將來回滾到這一狀態。
所謂備忘錄模式就是在不破壞封裝的前提下,捕獲一個對象的內部狀態,并在該對象之外保存這個狀態,這樣可以在以后將對象恢復到原先保存的狀態。
結構圖
鎖用來對數據進行鎖定,我們可以從鎖定對象的粒度大小來對鎖進行劃分,分別為行鎖、頁鎖和表鎖。
角色與理解
- 備忘錄模式共分為三種種角色:
- Originator(原發器):需要被記錄狀態的類
- Memento(備忘錄):記錄原發器狀態的類,內部含有原發器的部分屬性或者全部屬性,不能被其他類所修改
- Caretaker(管理者):管理備忘錄
- 原發器創建備忘錄記錄此刻內部各屬性的值,將備忘錄交給管理者管理,回滾狀態時,從管理者中獲取備忘錄,重置內部屬性
核心代碼
- 原發器
- 備忘錄
- 管理者
- 客戶端
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
存儲器
+關注
關注
38文章
7212瀏覽量
162396
發布評論請先 登錄
相關推薦
高顏值智能備忘錄:不再遺忘任何要事
摸出手機,在屏幕上找出備忘錄,打字,糾錯,排版...感覺好心塞...或者某天你在跑步,突然想起要給明天生日的女朋友買禮物,你在心里反復提醒,然后...跪了一晚上榴蓮...面對這些情況,小編特別想給大家
發表于 05-19 21:48
UDS診斷命令備忘錄
UDS實踐性強,邏輯復雜,很多服務非要體驗過一次才能理解,導致包括我在內的初學者感覺晦澀難懂,不明覺厲,因此將自己的理解寫下來、整理下來,與君共勉。零、UDS診斷命令備忘錄一、簡介UDS
發表于 08-26 16:09
怎樣去搭建一種基于XR806的開源桌面備忘錄
本人計劃懟一個開源桌面備忘錄/天氣預報/相冊的項目基于XR806,同時學習鴻蒙操作系統獲得暈哥贈送的開發板和芯片,目前處于環境搭建階段看起來這個芯片玩的人比較少,目前遇到了問題,不知道如何解決,希望
發表于 12-28 06:52
keil5MDK和eplan2.7安裝備忘錄相關資料分享
寫備忘錄是防止以后安裝的時候忘記步驟和主要問題。keil5安裝我第一次使用的是軟件安裝管家的安裝包,安完以后發現注冊碼一直弄不上,芯片庫里邊也沒有STM32的芯片。然后找到大二時候電子工藝實習
發表于 01-10 07:06
設計模式:備忘錄設計模式
備忘錄設計模式(Memento Design Pattern)是一種行為型設計模式,它的主要目的是在不破壞對象封裝性的前提下,捕捉和保存一個對象的內部狀態
億緯鋰能與Aksa簽署諒解備忘錄,共建土耳其合資公司
根據這份諒解備忘錄, 億緯鋰能和Aksa同意在土耳其設立一個合資企業。至于合資企業的股權結構、管理模式、融資途徑等具體內容將在未來的合資協議中予以詳述。
評論