建造者模式-向不同地方国家的女生说”我爱你”

建造者模式比喻
女生最爱听的就是“我爱你”这句话了,见到不同地方的女生,要能够用她们的方言跟她说这句话哦,我有一个多种语言翻译机,上面每种语言都有一个按键,见到不同地方的女生我只要按对应的键,它就能够用相应的语言说出“我爱你”这句话了,国外的女孩也可以轻松搞定,这就是我的“我爱你”Builder建造者模式。
 
建造者模式意图
建造者模式(Builder)将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
 
建造者模式类图
www.zhuli8.com-朱利IT博客
建造者模式实现
    /// <summary>
    /// 建造者模式抽象类,用来指定创建对象的抽象接口
    /// </summary>
    abstract class Translator
    {
        public abstract string SayLove();
    }
    /// <summary>
    /// 具体建造者中文版我爱你,实现Translator接口。
    /// </summary>
    class Trans_CN:Translator
    {
        public override string SayLove()
        {
            return "我爱你!";
        }
    }
    /// <summary>
    /// 具体建造者英文版我爱你,实现Translator接口。
    /// </summary>
    class Trans_EN:Translator
    {
        public override string SayLove()
        {
            return "I Love You!";
        }
    }
    /// <summary>
    /// 按键指挥管理类,根据用户的需求说不同的语言。
    /// </summary>
    class ManageKey
    {
        private Translator t;
        public ManageKey(Translator t)
        {
            this.t = t;
        }
        public string Say()
        {
            return t.SayLove();
        }
    }
    /// <summary>
    /// 客户端应用建造者模式
    /// </summary>
    class Program
    {
        static void Main(string[] args)
        {
             //向北京姑娘表达爱意
            Trans_CN cn = new Trans_CN();
            ManageKey key = new ManageKey(cn);
 
            Console.WriteLine(key.Say());

            Console.Read();
        }
    }
 
建造者模式总结
这个机器只支持说一句”我爱你”这样的句子这个动作,也就是说建造者模式在创建一些复杂对象时要求对象内部的构建是稳定的,但是可以支持多种语言,即每个建造过程可以生产具有不同内部表象的产品对象,使得产品内部表象可以独立的变化,客户不必知道产品内部组成的细节。
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值