欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#裝飾者模式實(shí)例分析

 更新時(shí)間:2014年10月12日 09:58:17   投稿:shichen2014  
這篇文章主要介紹了C#裝飾者模式,是C#中比較常見的設(shè)計(jì)模式,非常具有實(shí)用價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了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("具體對(duì)象的操作!");
      }
    }
  }
}

希望本文所述對(duì)大家的C#程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論