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

网站支付怎么做安全吗免费推广app工作好做吗

网站支付怎么做安全吗,免费推广app工作好做吗,免费的网站模板哪里有,网站做备案需要多久Builder模式概述 Builder模式是一种创建型设计模式,通过分步骤构建复杂对象而非一次性创建。它特别适用于需要创建包含多个可选参数的对象场景。 核心思想 将复杂对象的构建与表示分离提供流畅的API接口支持链式调用确保对象创建的一致性和完整性 典型结构 1. …

Builder模式概述

Builder模式是一种创建型设计模式,通过分步骤构建复杂对象而非一次性创建。它特别适用于需要创建包含多个可选参数的对象场景。

核心思想

  • 将复杂对象的构建与表示分离
  • 提供流畅的API接口
  • 支持链式调用
  • 确保对象创建的一致性和完整性

典型结构

1. 产品类(Product)

public class Computer {private String cpu;private String memory;private String storage;private String graphicsCard;// 构造函数、getter和setter方法
}

2. 抽象建造者(Builder)

public abstract class ComputerBuilder {protected Computer computer = new Computer();public abstract void buildCpu();public abstract void buildMemory();public abstract void buildStorage();public abstract void buildGraphicsCard();public Computer getResult() {return computer;}
}

3. 具体建造者(ConcreteBuilder)

public class GamingComputerBuilder extends ComputerBuilder {@Overridepublic void buildCpu() {computer.setCpu("Intel i9-12900K");}@Overridepublic void buildMemory() {computer.setMemory("32GB DDR5");}@Overridepublic void buildStorage() {computer.setStorage("2TB NVMe SSD");}@Overridepublic void buildGraphicsCard() {computer.setGraphicsCard("RTX 4090");}
}

4. 指挥者(Director)

public class ComputerDirector {private ComputerBuilder builder;public void setBuilder(ComputerBuilder builder) {this.builder = builder;}public Computer construct() {builder.buildCpu();builder.buildMemory();builder.buildStorage();builder.buildGraphicsCard();return builder.getResult();}
}

实现方式(链式调用)

现代Java中更常用的链式调用方式:

public class Computer {private String cpu;private String memory;private String storage;private String graphicsCard;private Computer() {} // 私有构造函数public static class Builder {private Computer computer = new Computer();public Builder cpu(String cpu) {computer.cpu = cpu;return this;}public Builder memory(String memory) {computer.memory = memory;return this;}public Builder storage(String storage) {computer.storage = storage;return this;}public Builder graphicsCard(String graphicsCard) {computer.graphicsCard = graphicsCard;return this;}public Computer build() {// 验证逻辑if (computer.cpu == null) {throw new IllegalStateException("CPU is required");}return computer;}}// getter方法public String getCpu() { return cpu; }public String getMemory() { return memory; }public String getStorage() { return storage; }public String getGraphicsCard() { return graphicsCard; }
}

使用示例

// 游戏电脑配置
Computer gamingComputer = new Computer.Builder().cpu("Intel i9-12900K").memory("32GB DDR5").storage("2TB NVMe SSD").graphicsCard("RTX 4090").build();// 办公电脑配置
Computer officeComputer = new Computer.Builder().cpu("Intel i5-12400").memory("16GB DDR4").storage("512GB SSD").build();

Builder模式优势

  • 参数可选性:只需设置必要参数
  • 参数无序性:设置顺序灵活
  • 对象不可变:创建后无法修改
  • 代码可读性:逻辑清晰明了
  • 类型安全性:编译时检查
  • 验证机制:支持构建时参数验证

适用场景

  • 创建包含多个可选参数的复杂对象
  • 需要参数验证的对象构建
  • 不可变对象的创建过程
  • 各类配置对象的构造
  • 需要提供流畅API接口的设计

与其他模式对比

  • Factory模式:处理参数固定的对象创建
  • Builder模式:处理复杂对象的逐步构建
  • Prototype模式:处理对象复制
  • Singleton模式:处理单例创建

Builder模式是Java开发中构建复杂对象的重要工具,特别适合创建包含多个可选参数的对象,是现代Java开发的核心设计模式之一。

下一篇:装饰器模式和建造者模式的使用场景和区别-CSDN博客

http://www.dtcms.com/a/556324.html

相关文章:

  • 贵阳网站备案在哪里wordpress 上传文件中文乱码
  • 蓝色企业网站配色武安市住房和城乡规划建设局网站
  • 和各大网站做视频的工作总结网站开发公司介绍
  • 网站推广员招聘网站建设项目甘特图
  • 郑州做网站九零后网络o2o服务平台
  • 网站设计手机型做网站时版权怎么写
  • 网站开发管理营销型企业网站优化
  • 网页设计音乐网站票付通app下载
  • 夫妻网站开发比较有设计感的网站
  • 单位网站建设方案电子科技产品网站建设
  • 营销型国外网站微博推广软件
  • 成品短视频软件推荐下载免费东莞网站建设优化技术
  • 天津市精神文明建设网站照片制作动态图片软件
  • 网站开发的框架网站用亚马逊做标题会侵权吗
  • 哪些网站的做的好看加快网站速度吗
  • 网站死链怎么解决如何做目录wordpress
  • 动态图片素材网站网络舆情的危害
  • 免费公司网站怎么做wordpress密码$
  • 做网站最大的公司如何在网站后台添加商品
  • 网站彩票怎么做wordpress手机页面模板下载
  • 电子商务与网站建设论文企业app怎么做
  • 怎样把自己做的网站上传到网上wordpress里的导航用什么位置
  • 匠王红木在那个网站做众筹微信指数是搜索量吗
  • 稿定设计网站官网怎么用wordpress打开网站吗
  • 会计题库网站怎么做深圳市信用网
  • 快手刷评论推广网站绚丽网站模板
  • 制作网站结构设计小程序源码模板下载
  • 网站报价页榕江网站建设
  • 网站建设主体力量石油大学 网页设计与网站建设
  • 在电脑上建设个人网站免费免备案空间