程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#裝潢者形式實例剖析

C#裝潢者形式實例剖析

編輯:C#入門知識

C#裝潢者形式實例剖析。本站提示廣大學習愛好者:(C#裝潢者形式實例剖析)文章只能為提供參考,不一定能成為您想要的結果。以下是C#裝潢者形式實例剖析正文


本文實例講述了C#裝潢者形式。分享給年夜家供年夜家參考。詳細辦法以下:

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

namespace 裝潢者
{
  class Program
  {
    static void Main(string[] args)
    {
      ConcreteComponent con = new ConcreteComponent();
      ConcreteDecoratorA a = new ConcreteDecoratorA();
      a.SetComponent(con);
      a.Operation();
      a.AddBehavior();
      Console.WriteLine("============================");
      ConcreteDecoratorB B = new ConcreteDecoratorB();
      B.SetComponent(a);
      a.AddBehavior();
      B.Operation();
      B.AddBehavior();
    }
    public abstract class Component
    {
      public abstract void Operation();
    }
    abstract class Decorator : Component
    {
      private Component component;
      public void SetComponent(Component component)
      {
        this.component = component;
      }
      public override void Operation()
      {
        if (component != null)
        {
          component.Operation();
        }
      }
    }
    class ConcreteDecoratorA : Decorator
    {
      public override void Operation()
      {
        base.Operation();
      }
      public void AddBehavior()
      {
        Console.WriteLine("裝潢A類的操作!");
      }
    }
    class ConcreteDecoratorB : Decorator
    {
      public override void Operation()
      {
        base.Operation();
      }
      public void AddBehavior()
      {
        Console.WriteLine("裝潢B類的操作!");
      }
    }
    public class ConcreteComponent : Component
    {
      public override void Operation()
      {
        Console.WriteLine("詳細對象的操作!");
      }
    }
  }
}

願望本文所述對年夜家的C#法式設計有所贊助。

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