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

网站建设制作哪家便宜wordpress手机端显示pc端

网站建设制作哪家便宜,wordpress手机端显示pc端,重庆城乡建设部网站首页,各种软件开发定制本文内容参考: 软考 系统架构设计师系列知识点之设计模式(2)_系统架构设计师中考设计模式吗-CSDN博客 创建者模式_百度百科 建造者模式_百度百科 https://zhuanlan.zhihu.com/p/551870461 特此致谢! Builder Pattern&#xf…

本文内容参考:

软考 系统架构设计师系列知识点之设计模式(2)_系统架构设计师中考设计模式吗-CSDN博客

创建者模式_百度百科

建造者模式_百度百科

https://zhuanlan.zhihu.com/p/551870461

特此致谢!

Builder Pattern(创建者模式)

1. 概述

创建者模式,又称为构建者模式、建造者模式、构建器模式、生成器模式,英文名称(统一)为Builder Pattern。创建者模式是23种设计模式之一。其核心思想是:将一个“复杂对象的构建算法”与它的“部件及组装方式”分离,使得构件算法和组装方式可以独立应对变化;复用同样的构建算法可以创建不同的表示,不同的构建过程可以复用相同的部件组装方式。

更为直观简要地说,创建者将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。

2. 实现原理

创建者模式能够分步骤创建复杂对象,允许使用相同的创建代码生成不同类型和形式的对象。

创建者模式所构建的对象一定是庞大而复杂的,并且一定是按照既定的制造工序将组件组装起来的,例如计算机、汽车、建筑物等。通常将负责构建这些大型对象的工程师称为建造者。

建造者模式又称为生成器模式,主要用于对复杂对象的构建、初始化,它可以将多个简单的组件对象按顺序一步步组装起来,最终构建成一个复杂的成品对象。

与工厂系列模式不同的是,建造者模式的主要目的在于把烦琐的构建过程从不同对象中抽离出来,使其脱离并独立于产品类与工厂类,最终实现用同一套标准的制造工序能够产出不同的产品。

3. 角色

创建者模式主要由五个部分构成:组装类、抽象创建者类、实现抽象创建者类的具体创建者类(ConcreateBuilder)、抽象产品和实现抽象产品的具体产品类。

  • Builder

为创建一个产品对象的各个部件指定抽象接口。

  • ConcreteBuilder

实现Builder的接口以构造和装配该产品的各个部件,定义并明确它所创建的表示,并提供一个检索产品的接口。

  • Director

构造一个使用Builder接口的对象。

  • Product

表示被构造的复杂对象。ConcreteBuilder创建该产品的内部表示并定义它的装配过程,包含定义组成部件的类,包括将这些部件装配成最终产品的接口。

4. 代码举例

  • Builder
public interface PersonBuilder {void buildHead();void buildBody();void buildFoot();Person buildPerson();
}

  • ConcreteBuilder
public class ManBuilder implements PersonBuilder {Person person;public ManBuilder() {person = new Person();}public void buildbody() {person.setBody("建造男人的身体");}public void buildFoot() {person.setFoot("建造男人的脚");}public void buildHead() {person.setHead("建造男人的头");}public Person buildPerson() {return person;}
}

  • Director
public class PersonDirector {public Person constructPerson(PersonBuilder pb) {pb.buildHead();pb.buildBody();pb.buildFoot();return pb.buildPerson();}
}

  • Product
public class Person {private String head;private String body;private String foot;public String getHead() {return head;}public void setHead(String head) {this.head = head;}public String getBody() {return body;}public void setBody(String body) {this.body = body;}public String getFoot() {return foot;}public void setFoot(String foot) {this.foot = foot;}
}public class Man extends Person {
}

测试代码:

public class Test{public static void main(String[] args) {PersonDirector pd = new PersonDirector();Person person = pd.constructPerson(new ManBuilder());System.out.println(person.getBody());System.out.println(person.getFoot());System.out.println(person.getHead());}
}


文章转载自:

http://9sGMukCI.fLncd.cn
http://1pL1JSzL.fLncd.cn
http://jX4f2prU.fLncd.cn
http://bKlCI5wr.fLncd.cn
http://Xl3ikbfL.fLncd.cn
http://h03vpvqo.fLncd.cn
http://CwYcq4P9.fLncd.cn
http://yNMDzbil.fLncd.cn
http://ac0epoBn.fLncd.cn
http://xyJguXgl.fLncd.cn
http://9C0pC5IJ.fLncd.cn
http://sOkAY4RC.fLncd.cn
http://t9Qpk1p1.fLncd.cn
http://2DtsRKrE.fLncd.cn
http://3rMVCO40.fLncd.cn
http://8UAC07cj.fLncd.cn
http://5rROZ43o.fLncd.cn
http://rXzVPAw5.fLncd.cn
http://h4d3y26D.fLncd.cn
http://sQFvD0J5.fLncd.cn
http://LdB4yjzz.fLncd.cn
http://3EHDC6nq.fLncd.cn
http://B2vT3yLI.fLncd.cn
http://No2w5R8P.fLncd.cn
http://ih3OCybE.fLncd.cn
http://u2PORZct.fLncd.cn
http://UBtXWkDZ.fLncd.cn
http://iofsGrAJ.fLncd.cn
http://cgclmYIK.fLncd.cn
http://47ABaz8m.fLncd.cn
http://www.dtcms.com/wzjs/611056.html

相关文章:

  • 网站建设优化的书籍网站负责人 备案
  • 县级网站网上哪里接app推广单
  • 怎么做邮箱网站什么平台
  • 美妆网站建设方案wordpress首页生成html
  • 做个网站哪个网站的ps元素好
  • 宜春专业的企业网站建设公司上海 网站建设google
  • 上海网站模板wordpress视频前置广告插件
  • 北京网站备案的地址大连地区建设网站
  • 云南省住房和建设执业资格注册中心网站关键词排名关键词优化
  • wordpress编辑器存内容全国分站seo
  • 石家庄 外贸网站建设推广小程序拿佣金
  • 做界面网站用什么语言网络推广网站推广
  • 网站模板建站教程视频辉县网站建设
  • 品牌网站建设 app建设北京百度推广代理
  • h5企业网站模板wordpress用户邮箱验证
  • 大连网站开发平台降低生育
  • 做网站虚拟服务器大连网站排名优
  • 寿光网站建设开发贵州灵溪seo整站优化
  • c2c网站建站的标准天津做不锈钢的网站
  • 网页设计与网站建设报告学校网站建设报价单
  • 肇庆城乡建设门户网站电子商务网站建设主管的策划案
  • 酒店 深圳 网站制作it运维工程师月薪
  • 电脑网站编程江苏省教育网站官网
  • 硬件优化大师seo引擎优化方案
  • 宿迁企业网站设计python做互金网站
  • 合肥百度 网站建设wordpress博客速度很慢
  • 做网站能用ai做吗dw网页制作模板成品免费
  • 一个大型网站建设得多少钱三亚网站建设方案
  • 无锡网站建设方案托管网站的公关和广告活动怎么做
  • 彩票网站开发. 极云青岛茶叶网站建设