国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

用最簡單的例子理解備忘錄模式(Memento Pattern)

2019-11-17 02:54:32
字體:
來源:轉載
供稿:網友

用最簡單的例子理解備忘錄模式(Memento Pattern)

簡單來說,備忘錄模式就是支持回退操作。假設讓一個Notepad支持回退操作,如何實現呢?

首先需要一個備忘錄類。

    public class Memento
    {
        PRivate string _msg;
        public Memento(string msg)
        {
            _msg = msg;
        }
        public string GetText()
        {
            return _msg;
        }
    }

以上,○ 構造函數在Nodepad每次記錄信息的時候調用,Nodepad所記錄的信息最終通過該構造函數賦值給了_msg字段。○ GetText方法在Nodepad執行回退操作的時候調用

接下來就是Nodepad類。

    public class Notepad
    {
        private string _msg;
        public Memento SetMsg(string msg)
        {
            Memento m = new Memento(msg);
            _msg = msg;
            return m;
        }
         
        public string GetMsg()
        {
            return _msg;
        }
        public void Undo(Memento previousState)
        {
            if (previousState != null)
            {
                _msg = previousState.GetText();
            }
            else
            {
                _msg = "";
            }
           
        }
    }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吴旗县| 沈丘县| 华阴市| 德钦县| 灯塔市| 兴国县| 海兴县| 鞍山市| 长顺县| 抚远县| 颍上县| 吉安市| 故城县| 灌阳县| 郧西县| 霸州市| 东安县| 南京市| 绥江县| 贵阳市| 泸溪县| 永新县| 宁明县| 繁峙县| 汨罗市| 左贡县| 博客| 依兰县| 宁化县| 大姚县| 涪陵区| 墨脱县| 古蔺县| 兴化市| 岚皋县| 滨州市| 腾冲县| 都江堰市| 吴江市| 佛教| 文山县|