设计模式06_桥接模式

设计模式学习笔记_桥接模式

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

namespace 桥接_咖啡加糖
{
    abstract  class Add_into_coffee
    {
        public abstract void add_into();
    }
    class add_Sugar:Add_into_coffee
    {
        public override void add_into()
        {
            Console.Write("添加了糖的");
        }

    }
    class add_Lemon:Add_into_coffee
    {
        public override void add_into()
        {
            Console.Write("添加了Lemon的");
        }
    }

    class add_Milk:Add_into_coffee
    {
        public override void add_into()
        {
            Console.Write("添加了牛奶的");
        }
    }
    abstract class Coffee
    {
        protected Add_into_coffee add_into;
        public void setAdd_into_coffee(Add_into_coffee add_into)
        {
            this.add_into = add_into;
        }
        public abstract void size();

    }
    class JorumCoffee:Coffee
    {
        public override void size()
        {
            add_into.add_into();
            Console.WriteLine("大杯咖啡");
        }
    }
    class MediumCoffee : Coffee
    {
        public override void size()
        {
            add_into.add_into();
            Console.WriteLine("中杯咖啡");
        }
    }
    class SmallCoffee : Coffee
    {
        public override void size()
        {
            add_into.add_into();
            Console.WriteLine("小杯咖啡");
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Coffee cof;
            cof = new MediumCoffee();
            cof.setAdd_into_coffee(new add_Sugar());
            cof.size();

            cof = new SmallCoffee();
            cof.setAdd_into_coffee(new add_Lemon());
            cof.size();
            Console.Read();

        }
    }
}


posted on 2016-06-02 15:47  胖胖的乓乓  阅读(112)  评论(0编辑  收藏  举报

导航