首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

設計模式(C#):訪問者模式(二)── 實體類別與抽象元素

     編輯:關於C語言

MessageModel 實體類別

namespace Pattern.Visitor
{
    public class MessageModel
    {
        public MessageModel(string msg, DateTime pt)
        {
            this._message = msg;
            this._publishTime = pt;
        }
        private string _message;
        public string Message { get { return _message; } set { _message = value; } }
        private DateTime _publishTime;
        public DateTime PublishTime { get { return _publishTime; } set { _publishTime = value; } }
    }
}

AbstractElement 抽象元素

namespace Pattern.Visitor
{
    public abstract class AbstractElement
    {
        public abstract string Accept(AbstractVisitor abstractVisitor);
    }
}

角色對應

  • MessageModel:資料實體(本範例中由 Message 類別包裝)。
  • AbstractElement:定義 Accept(Visitor),元素透過雙重分派呼叫訪問者的 Visit。
  • AbstractVisitor:定義 Visit(Element),具體訪問者實作具體操作。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved