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

重庆网站搭建公司糕点烘焙专业培训学校

重庆网站搭建公司,糕点烘焙专业培训学校,直播间搭建,wordpress 投票一、 1、概念:将一个复杂对象的构造与它的表示分离,使得同样的构造过程可以创建不同的表示。建造者模式主要用于创建一些复杂的对象,这些对象内部构建间的顺序通常是稳定的,但对象内部的构建通常面临着复杂的变化;建造…

一、

1、概念:将一个复杂对象的构造与它的表示分离,使得同样的构造过程可以创建不同的表示。建造者模式主要用于创建一些复杂的对象,这些对象内部构建间的顺序通常是稳定的,但对象内部的构建通常面临着复杂的变化;建造者模式的好处就是使得建造代码与表示代码分离,由于建造者隐藏了该产品是如何组装的,所以若需要改变一个产品的内部表示,只需要再定义一个具体的建造者就可以了。

2、结构图:

import java.util.ArrayList;//产品类
public class Product {ArrayList<String> parts = new ArrayList<>();//添加新的产品不见public void add(String part) {parts.add(part);}// 列举所有的产品不见public void show() {for (String part : parts) {System.out.println(part);}}
}//抽象的建造者类
public abstract class Builder {//建造部件Apublic abstract void buildPartA();//建造部件Bpublic abstract void buildPartB();//得到产品public abstract Product getResult();}//具体的建造类
public class ConcreteBuilder1 extends Builder {private Product product = new Product();@Overridepublic void buildPartA() {product.add("部件A");}@Overridepublic void buildPartB() {product.add("部件B");}@Overridepublic Product getResult() {return product;}
}//具体的建造类
public class ConcreteBuilder2 extends Builder {private Product product = new Product();@Overridepublic void buildPartA() {product.add("部件X");}@Overridepublic void buildPartB() {product.add("部件Y");}@Overridepublic Product getResult() {return product;}
}//指挥者类
public class Director {//建造者模式是在当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时适用的模式。public void construct(Builder builder) {builder.buildPartA();builder.buildPartB();}
}public static void main(String[] args) {Director director = new Director();Builder b1 = new ConcreteBuilder1();Builder b2 = new ConcreteBuilder2();director.construct(b1);Product result1 = b1.getResult();director.construct(b2);Product result2 = b2.getResult();}

 3、使用场景:当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时使用。

4、优点:

  • 首先,建造者模式的封装性很好。使用建造者模式可以有效的封装变化,在使用建造者模式的场景中,一般产品类和建造者类是比较稳定的,因此,将主要的业务逻辑封装在导演类中对整体而言可以取得比较好的稳定性。
  • 其次,建造者模式很容易进行扩展。如果有新的需求,通过实现一个新的建造者类就可以完成,基本上不用修改之前已经测试通过的代码,因此也就不会对原有功能引入风险。

5、建造者模式与工厂模式的区别:

  • 建造者模式与工厂模式是极为相似的,总体上,建造者模式仅仅只比工厂模式多了一个“导演类”的角色。在建造者模式的类图中,假如把这个导演类看做是最终调用的客户端,那么图中剩余的部分就可以看作是一个简单的工厂模式了。
  • 与工厂模式相比,建造者模式一般用来创建更为复杂的对象,因为对象的创建过程更为复杂,因此将对象的创建过程独立出来组成一个新的类——导演类。也就是说,工厂模式是将对象的全部创建过程封装在工厂类中,由工厂类向客户端提供最终的产品;而建造者模式中,建造者类一般只提供产品类中各个组件的建造,而将具体建造过程交付给导演类。由导演类负责将各个组件按照特定的规则组建为产品,然后将组建好的产品交付给客户端
http://www.15wanjia.com/news/13312.html

相关文章:

  • 用超轻粘土做网站seo网上课程
  • 做网站建设的电销外贸网站制作
  • 信息网站建设方案电商网站seo优化
  • 建设机械网站渠道seo和sem的区别是什么
  • 数据库和网站开发seo技术最新黑帽
  • wordpress进入有点卡广州seo优化排名推广
  • 一键生成广告图班级优化大师
  • 沈阳微信网站开发网络seo优化平台
  • 信阳做网站哪里能买精准客户电话
  • 国内最大的网站建设公司排名网络推广怎么做效果好
  • 网站建设制作需要多少钱新媒体平台
  • 开发三味风车动漫无修seo产品推广
  • wordpress免费响应式主题西安网站优化推广方案
  • 广东备案网站百度推广登录网址
  • 做情趣用品网站需要哪些资质爱站网 关键词挖掘
  • wordpress主页不加index.php 打不开重庆高端seo
  • 免费域名注册网优化设计四年级上册语文答案
  • 做网站开发功能清单网销怎么找客户资源
  • 为什么网站打开是空白seo怎么做优化排名
  • 做网站优化的注意事项3a汽车集团公司网络营销方案
  • 做网站实验体会seo关键字优化价格
  • 新手自己建网站seo在线优化平台
  • 泰安建设银行网站如何在百度搜索排名靠前
  • 周口网站建设 网站制作 网络推广域名比价网
  • 公司怎么做网页网站谷歌seo和百度区别
  • 备案查询站长之家腾讯广告代理商加盟
  • 如何建设一个小说网站石家庄疫情最新情况
  • 网站超级链接怎么做网站网络推广优化
  • 手机网站开发有前途舆情信息范文
  • 赌博网站开发软件淘宝竞价排名