当前位置: 首页 > news >正文

最简单的cms网站怎么做免费空间访客网站

最简单的cms网站怎么做,免费空间访客网站,正定seo,网站建设公司怎样建造者模式(Builder Pattern),也被称为生成器模式,是一种对象构建模式,旨在将复杂对象的构建过程与表示分离,使得同样的构建过程可以创建不同的表示。这种模式特别适用于构建具有多个组成部分的复杂对象&am…

建造者模式(Builder Pattern),也被称为生成器模式,是一种对象构建模式,旨在将复杂对象的构建过程与表示分离,使得同样的构建过程可以创建不同的表示。这种模式特别适用于构建具有多个组成部分的复杂对象,且这些组成部分的创建和组装方式相对独立。

public class BuilderPatternTest
{public void Main(){var director = new Director();//指挥者1var director1 = new Director1();//指挥者2var desktopBuilder = new DesktopBuilder();//建造者1var desktopBuilder2 = new DesktopBuilder2();//建造者2//第一台电脑,使用指挥者1,使用建造者1var computer1 = director.Construct(desktopBuilder);Console.WriteLine(computer1.ToString());//第二台电脑,使用指挥者2,使用建造者2var computer2 = director1.Construct(desktopBuilder);Console.WriteLine(computer2.ToString());//第三台电脑,使用指挥者1,使用建造者2var computer3 = director.Construct(desktopBuilder2);Console.WriteLine(computer3.ToString());//第四台电脑,使用建造者1,不使用指挥者var computer4 = new DesktopBuilder().SetType("平板电脑").SetRam(256).SetProcessor("i13212").Build();Console.WriteLine(computer4.ToString());}
}// 定义产品类
public class Computer
{public string Type { get; }public bool IsGraphicsCardIncluded { get; }public int Ram { get; }public string Processor { get; }public Computer(string type, bool isGraphicsCardIncluded, int ram, string processor){Type = type;IsGraphicsCardIncluded = isGraphicsCardIncluded;Ram = ram;Processor = processor;}public override string ToString(){return $"Type: {Type}, Graphics Card: {IsGraphicsCardIncluded}, RAM: {Ram}GB, Processor: {Processor}";}
}// 抽象建造者
// 也可以使用接口实现抽象建造者
// 方法中返回自身,以便链式调用
public abstract class Builder
{protected string Type;protected bool IsGraphicsCardIncluded;protected int Ram;protected string Processor;public abstract Computer Build();public virtual Builder SetType(string type){return this;}public virtual Builder SetGraphicsCard(bool isGraphicsCardIncluded){return this;}public virtual Builder SetRam(int ram){return this;}public virtual Builder SetProcessor(string processor){return this;}
}// 具体建造者
public class DesktopBuilder : Builder
{public override Computer Build(){return new Computer(Type, IsGraphicsCardIncluded, Ram, Processor);}public override DesktopBuilder SetType(string type){Type = type;return this;}public override DesktopBuilder SetGraphicsCard(bool isGraphicsCardIncluded){IsGraphicsCardIncluded = isGraphicsCardIncluded;return this;}public override DesktopBuilder SetRam(int ram){Ram = ram;return this;}public override DesktopBuilder SetProcessor(string processor){Processor = processor;return this;}
}public class DesktopBuilder2 : Builder
{public override Computer Build(){return new Computer(Type, IsGraphicsCardIncluded, Ram, Processor);}public override DesktopBuilder2 SetType(string type){Type = type;return this;}public override DesktopBuilder2 SetGraphicsCard(bool isGraphicsCardIncluded){IsGraphicsCardIncluded = isGraphicsCardIncluded;return this;}public override DesktopBuilder2 SetRam(int ram){Ram = ram;return this;}
}// 导演类
public class Director
{public Computer Construct(Builder builder){builder.SetType("台式电脑");builder.SetGraphicsCard(true);builder.SetRam(16);builder.SetProcessor("i7");return builder.Build();}
}public class Director1
{public Computer Construct(Builder builder){builder.SetType("笔记本电脑");builder.SetGraphicsCard(true);builder.SetRam(128);builder.SetProcessor("i1000");return builder.Build();}
}

http://www.15wanjia.com/news/167054.html

相关文章:

  • 黄石网站建设推荐中国空间站设计在轨飞行多少年
  • 吴江住房建设局网站中国建设教育网站官方
  • 广州做网站信息什么是网站的根目录
  • 桂林网站制作哪家公司好网站部署 模板
  • 使用阿里云建网站wordpress怎么选择中文
  • 义乌企业网站建设网站权重0
  • 南宁京象建站公司怎么下载四川人社app
  • 物流公司怎么做网站加工网线
  • 南阳网站广告推广代理
  • 登陆中国建设银行网站我的账户密码怎么就有了?怎么清除西宁网站开发
  • 100个万能网站树形菜单网站
  • 公司官方网站建设需要多少钱国家城乡住房建设厅网站
  • 江苏工程建设信息网站wordpress utc时间差12个小时
  • 汕头网站制作专业软件下载网站制作
  • 北海 网站制作工手机直播app开发制作
  • 电力行业企业网站建设做视频网站视频的软件
  • 建设网站申请全网营销书籍
  • 怎么查找网站的服务器做网站订房网站
  • 深圳住房和建设局网站月光博客 wordpress
  • 网站建设插件网店要怎么运营
  • 西安做网站多少钱网站备案号怎么放
  • 哪里有个人做网站的网站双机热备怎么做
  • 免费发布的网站小型电商app有哪些
  • 管理系统考生端重置密码宁波seo排名优化平台
  • 做100个网站效果做网站收入太低
  • 知乎网站开发用的语言网站上怎么做企业推广
  • 网站开发常用框架锡盟建设工程网站
  • 昆山住房城乡建设局网站查询设计联盟网站
  • 网站建设网页制网站建设中申请备案
  • 网站建设好评语网站架构的优化