首页 > 后端开发 > C#.Net教程 > C# 设计模式之桥接模式的代码详解

C# 设计模式之桥接模式的代码详解

黄舟
发布: 2017-03-02 13:09:15
原创
1262 人浏览过

让抽象和实现  独立的变化

public abstract class Game
    {
        public Game(string name)
        {
            this.Name = name;
        }


        public Play m_play { get; set; }
        public string Name { get; set; }


        public virtual void PlayForFun()
        {
            this.m_play.PlayIt(this.Name);
        }
    }
    public class War3Game : Game
    {
        public War3Game(string name) : base(name) { 
        
        }
        public override void PlayForFun()
        {
            base.PlayForFun();
        }
    }
    public class KofGame : Game
    {
        public KofGame(string name)
            : base(name)
        { 
        
        }
        public override void PlayForFun()
        {
            base.PlayForFun();
        }
    }
    public class CsGame : Game
    {
        public CsGame(string name)
            : base(name)
        {
        
        }
        public override void PlayForFun()
        {
            base.PlayForFun();
        }
    }


    public abstract class Play
    {
        public virtual void PlayIt(string gameName) { }
    }
    public class CpuPlay : Play
    {
        public override void PlayIt(string gameName)
        {
            Console.WriteLine("play" + gameName + " game on computer");
        }
    }
    public class IPadPlay : Play
    {
        public override void PlayIt(string gameName)
        {
            Console.WriteLine("play" + gameName + " game on ipad");
        }
    }
    public class IPhonePlay : Play
    {
        public override void PlayIt(string gameName)
        {
            Console.WriteLine("play " + gameName + " game on iphone");
        }
    }
登录后复制

调用:

  Game g = new KofGame("kof97");
            g.m_play = new IPadPlay();
            g.PlayForFun();
登录后复制

 以上就是C#  设计模式之桥接模式的代码详解的内容,更多相关内容请关注PHP中文网(m.sbmmt.com)!


来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板