c#设计模式==建造者模式

本文介绍建造者模式的基本概念及其应用场景,通过一个简单的示例演示如何使用建造者模式来创建复杂对象的不同表示形式,同时展示了模式的灵活性和实用性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  建造者模式,将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。

  建造者模式将具体的建造细节与客户端分离了,客户端只需指定建造的类型就可以得到成果。建造者模式是当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时适用的模式。



程序:

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

namespace 建造者模式
{
    class Program
    {
        static void Main(string[] args)
        {
            PeopleFat Fpeo = new PeopleFat();

            Direct dir1 = new Direct(Fpeo);
            dir1.create();

            Console.Out.WriteLine("-----------------------");
            PeopleThin Tpeo = new PeopleThin();

            Direct dir2 = new Direct(Fpeo);
            dir2.create();
        }
    }

    interface People
    {
        void createHead();
        void createBody();
        void createHands();
        void createFoot();
    }

    class PeopleThin : People
    {
        public void createHead()
        {
            Console.Out.WriteLine(" 瘦子  头");
        }
        public void createBody()
        {
            Console.Out.WriteLine(" 瘦子  身躯");
        }
        public void createHands()
        {
            Console.Out.WriteLine(" 瘦子  手");
        }
        public void createFoot()
        {
            Console.Out.WriteLine(" 瘦子  脚");
        }
    }

    class PeopleFat : People
    {
        public void createHead()
        {
            Console.Out.WriteLine(" 胖子  头");
        }
        public void createBody()
        {
            Console.Out.WriteLine(" 胖子  身躯");
        }
        public void createHands()
        {
            Console.Out.WriteLine(" 胖子  手");
        }
        public void createFoot()
        {
            Console.Out.WriteLine(" 胖子  脚");
        }
    }

    class Direct
    {
        private People peo;
        public Direct(People peo)
        {
            this.peo = peo;
        }
        public void create()
        {
            this.peo.createHead();
            this.peo.createBody();
            this.peo.createHands();
            this.peo.createFoot();
        }
    }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值