程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 設計模式(C#) - 組合模式(Composite Pattern)(5)

設計模式(C#) - 組合模式(Composite Pattern)(5)

編輯:關於C語言

MessageModelComposite

using System;
using System.Collections.Generic;
using System.Text;

namespace Pattern.Composite
{
  /**//// <summary>
  /// Message實體樹枝(Composite)
  /// </summary>
  public class MessageModelComposite : MessageModelComponent
  {
    private List<MessageModelComponent> _list;

    /**//// <summary>
    /// 構造函數
    /// </summary>
    /// <param name="name">名稱</param>
    public MessageModelComposite(string name)
      : base(name)
    {
      _list = new List<MessageModelComponent>();
    }

    /**//// <summary>
    /// 添加
    /// </summary>
    /// <param name="mmc">MessageModelComponent</param>
    public override void Add(MessageModelComponent mmc)
    {
      _list.Add(mmc);
    }

    /**//// <summary>
    /// 刪除
    /// </summary>
    /// <param name="mmc">MessageModelComponent</param>
    public override void Remove(MessageModelComponent mmc)
    {
      _list.Remove(mmc);
    }

    /**//// <summary>
    /// 獲取
    /// </summary>
    /// <param name="indent">縮進數</param>
    /// <returns></returns>
    public override string GetData(int indent)
    {
      string s = new String('—', indent) +
        "樹枝名稱:" + _name +
        "<br />";

      foreach (MessageModelComponent mmc in _list)
      {
        s += mmc.GetData(indent + 2);
      }

      return s;
    }
  }
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved