适配器模式

适配器模式:系统的数据和行为都正确,但接口不符时,我们应该考虑用适配器,目的是使控制范围之外的一个原有对象与某个接口匹配。适配器模式主要应用于希望复用一些现存的类,但是接口又与复用环境要求不一致的情况。


Client:美国的电脑

Target:中国的插座

Adapter:适配器(电源适配器,使美国的电脑可以插在中国的插座上,把源接口转换为目标接口)

Adaptee:适配器对象


姚明到美国打球需要翻译:

Player.cs

 

 //球员抽象类
    abstract class Player
    {
        protected string Name;
        public Player(string name)
        {
            this.Name = name;
        }

        public abstract void Attack();
        public abstract void Define();
    }


Forward.cs

 

 //前锋
    class Forward:Player
    {
        public Forward(string name)
            : base(name)
        { }

        public override void Define()
        {
            Console.WriteLine("Forward Define go go go");

        }

        public override void Attack()
        {
            Console.WriteLine("Forward Attack go go go");

        }
    }


ForeginCerter.cs
外籍中锋

    //外籍中锋
    class ForeignCenter
    {
        private string name;
        public string Name
        {
            get { return name; }
            set { name = value; }
        }
        public  void 防守()
        {
            Console.WriteLine("中锋快去防守");

        }

        public  void 进攻()
        {
            Console.WriteLine("中锋快去进攻");

        }
    }


Translator.cs

翻译

//翻译(当成球员角色)
    class Translator:Player
    {
        ForeignCenter fc = new ForeignCenter();


        public Translator(string name)
            : base(name)
        {
            fc.Name = name;
        }

        public override void Define()
        {
            fc.防守();
        }

        public override void Attack()
        {
            fc.进攻();
        }
    }


program.cs
主程序调用

  class Program
    {
        static void Main(string[] args)
        {
            Player b = new Forward("巴蒂尔");
            b.Attack();
            Player m = new Translator("姚明");
            m.Define();

            Console.Read();
        }
    }

运用:DataAdapter用作DataSet和数据源之间的适配器以便检索和保存数据。DataApter通过映射Fill和Update来提供这一适配

    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

疯的世界

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值