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

求个没封的w站2021不用下载windows优化大师自动下载

求个没封的w站2021不用下载,windows优化大师自动下载,电商网站建设需求分析 实例题,郴州网站建设建造者模式 概念 建造者模式是一种创建型设计模式#xff0c;通过使用多个简单的对象一步步构建一个复杂的对象。它将一个复杂对象的构建过程与其表示分离#xff0c;从而使同样的构建过程可以创建不同的表示。 应用场景 复杂对象构建#xff1a;当一个对象有多个属性通过使用多个简单的对象一步步构建一个复杂的对象。它将一个复杂对象的构建过程与其表示分离从而使同样的构建过程可以创建不同的表示。 应用场景 复杂对象构建当一个对象有多个属性且这些属性的组合复杂时例如配置文件的读取、复杂的界面元素等。多个表示需要构建的对象有不同的表示且相同的构建过程可以生成不同的表示。逐步构建需要逐步构建对象可能需要在不同的时间或不同的上下文中设置对象的属性。不变性当对象构建后需要保持不变的情况下使用建造者模式可以清晰地定义对象的状态。 注意点 复杂性建造者模式适用于构建复杂对象但如果对象较简单可能显得过于复杂。灵活性在构建对象时如果需要频繁修改构建的顺序或逻辑可能会导致建造者的实现复杂。建造者责任建造者的职责仅限于构建过程避免将其他逻辑混入建造者中。 核心要素 产品最终构建的复杂对象。建造者接口定义构建产品的各个部分的方法。具体建造者实现建造者接口负责具体的构建逻辑。指挥者负责调用建造者的方法控制构建过程。 Java代码示例 // 产品 class Product {private String partA;private String partB;public void setPartA(String partA) {this.partA partA;}public void setPartB(String partB) {this.partB partB;}Overridepublic String toString() {return Product [partA partA , partB partB ];} }// 建造者接口 interface Builder {void buildPartA();void buildPartB();Product getResult(); }// 具体建造者 class ConcreteBuilder implements Builder {private Product product new Product();Overridepublic void buildPartA() {product.setPartA(Part A);}Overridepublic void buildPartB() {product.setPartB(Part B);}Overridepublic Product getResult() {return product;} }// 指挥者 class Director {private Builder builder;public Director(Builder builder) {this.builder builder;}public void construct() {builder.buildPartA();builder.buildPartB();} }// 客户端 public class Client {public static void main(String[] args) {Builder builder new ConcreteBuilder();Director director new Director(builder);director.construct();Product product builder.getResult();System.out.println(product);} }各种变形用法 使用链式方法 可以在建造者中使用链式方法简化代码。 // 产品 class Product {private String partA;private String partB;public void setPartA(String partA) {this.partA partA;}public void setPartB(String partB) {this.partB partB;}Overridepublic String toString() {return Product [partA partA , partB partB ];} }// 建造者链式方法 class BuilderWithChain {private Product product new Product();public BuilderWithChain buildPartA() {product.setPartA(Part A);return this;}public BuilderWithChain buildPartB() {product.setPartB(Part B);return this;}public Product build() {return product;} }// 客户端 public class ClientChain {public static void main(String[] args) {BuilderWithChain builder new BuilderWithChain();Product product builder.buildPartA().buildPartB().build();System.out.println(product);} }复杂建造者 为不同类型的产品创建不同的建造者。 // 产品 class ComplexProduct {private String partA;private String partB;private String partC;public void setPartA(String partA) {this.partA partA;}public void setPartB(String partB) {this.partB partB;}public void setPartC(String partC) {this.partC partC;}Overridepublic String toString() {return ComplexProduct [partA partA , partB partB , partC partC ];} }// 复杂建造者 class ComplexBuilder implements Builder {private ComplexProduct product new ComplexProduct();Overridepublic void buildPartA() {product.setPartA(Complex Part A);}Overridepublic void buildPartB() {product.setPartB(Complex Part B);}public void buildPartC() {product.setPartC(Complex Part C);}Overridepublic ComplexProduct getResult() {return product;} }// 客户端 public class ClientComplex {public static void main(String[] args) {ComplexBuilder builder new ComplexBuilder();builder.buildPartA();builder.buildPartB();builder.buildPartC();ComplexProduct product builder.getResult();System.out.println(product);} }多建造者 可以同时使用多个建造者来构建产品的不同部分。 // 产品 class MultiProduct {private String partA;private String partB;public void setPartA(String partA) {this.partA partA;}public void setPartB(String partB) {this.partB partB;}Overridepublic String toString() {return MultiProduct [partA partA , partB partB ];} }// 建造者接口 interface Builder {void buildPartA();void buildPartB();MultiProduct getResult(); }// 具体建造者 class BuilderA implements Builder {private MultiProduct product new MultiProduct();Overridepublic void buildPartA() {product.setPartA(Builder A - Part A);}Overridepublic void buildPartB() {product.setPartB(Builder A - Part B);}Overridepublic MultiProduct getResult() {return product;} }class BuilderB implements Builder {private MultiProduct product new MultiProduct();Overridepublic void buildPartA() {product.setPartA(Builder B - Part A);}Overridepublic void buildPartB() {product.setPartB(Builder B - Part B);}Overridepublic MultiProduct getResult() {return product;} }// 多建造者指挥者 class MultiBuilderDirector {private ListBuilder builders;public MultiBuilderDirector(ListBuilder builders) {this.builders builders;}public void constructAll() {for (Builder builder : builders) {builder.buildPartA();builder.buildPartB();}} }// 客户端 public class ClientMulti {public static void main(String[] args) {ListBuilder builders new ArrayList();builders.add(new BuilderA());builders.add(new BuilderB());MultiBuilderDirector director new MultiBuilderDirector(builders);director.constructAll();for (Builder builder : builders) {MultiProduct product builder.getResult();System.out.println(product);}} }下面是几种建造者模式的变形用法的完整例子展示了如何使用链式方法、复杂建造者和多建造者。
http://www.w-s-a.com/news/344754/

相关文章:

  • 专业的营销型网站制作wordpress版权年份
  • 程序员会搭建非法网站吗怎么把wordpress字去掉
  • 牡丹江营商环境建设监督局网站中国档案网站建设的特点
  • 网站欣赏网站欣赏知名企业网站搭建
  • 书店网站建设可行性分析为大型企业设计网络营销方案
  • 北京教育云平台网站建设中国服装设计网站
  • 网络公司专业做网站豌豆荚app下载
  • 网站建设属于什么岗位济宁网站建设_云科网络
  • wordpress网站监测fwa 网站 欣赏
  • 用jsp做的可运行的网站推广网络
  • 电商网站设计论文wordpress子文件夹建站
  • 临沂网站优化如何如何做公司的网站建设
  • 建设部网站 光纤到户沈阳网页设计兼职
  • 企业网站建设作用宁波企业网站推广效果好
  • wordpress课件站模板做网站的公司 贵阳
  • 低价格网站建设网站建设中的板块名称
  • 青岛网站建设华夏h5链接是什么意思
  • 贸易公司如何做网站百度做的网站一般在什么后台
  • 东莞网站设计方案广州做服装电商拿货的网站
  • 部队网站建设设计dede个人网站模板
  • 个人网站怎么自己备案重庆怎样网站推广
  • 做电影网站挣钱吗重庆网站建设技术托管
  • 网站建设用户登录网站商业授权含义
  • 接做室内效果图的网站wordpress制作上传图片
  • 维护一个网站一年多少钱网站微信登录怎么做的
  • 中国建设银行网站E路护航官网如何在招聘网站上选个好公司做销售
  • 网站开发质量管理招聘网站建设方案
  • 有没有那个的网站seo编辑的工作内容
  • 平度那里有做网站的昆明建设招聘信息网站
  • 邯郸城乡建设部网站首页唐山市住房城乡建设部网站主页