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

网站主页图片设计帮平台做推广怎么赚钱

网站主页图片设计,帮平台做推广怎么赚钱,用织梦做的网站好用吗,wordpress上传音乐1. 建造者模式介绍 建造者模式是一种创建型设计模式,旨在通过将复杂对象的构建过程与其表示分离,使得同样的构建过程可以创建不同的表示。它通常用于构造步骤固定但具体实现可能变化的对象。 1.1 功能: 封装复杂对象的创建过程:适…

1. 建造者模式介绍

建造者模式是一种创建型设计模式,旨在通过将复杂对象的构建过程与其表示分离,使得同样的构建过程可以创建不同的表示。它通常用于构造步骤固定但具体实现可能变化的对象。

1.1 功能:

  1. 封装复杂对象的创建过程:适用于需要多个步骤来创建一个复杂对象的情况。
    • 一个类中有些属性属于必填的,这些必填信息需在创建对象时做校验;
    • 有些属性之间有依赖关系或约束条件,需在创建对象时需对多个属性联合做约束校验
  2. 提高代码可读性和可维护性:通过分离构建逻辑和表示逻辑,代码更加清晰。
    • 一个类中有很多属性,使用构造函数,会导致参数列表过长,影响代码的可读性和易用性
  3. 支持不可变对象的创建:可以在对象构建完成后一次性设置所有属性,避免部分初始化的状态。
    • 希望创建不可变对象,在对象在创建好之后,就不能再修改内部的属性值

1.2 用法:

step1. 定义一个 Builder 类负责构建目标对象,逐步设置各个参数。
step2. 目标类提供一个私有构造函数,只能通过 Builder 来实例化。

2. 代码演示

场景说明:新建一个 Computer对象,要求:

  1. 其 cpu、ram、storage属性是必有的
  2. storage值不能小于0,默认值为1024;
  3. name属性可空。

Computer比较符合建造者模式使用条件,对应代码如下:

public class Computer {private String cpu;private String ram;private Long storage;private String name;// Private constructor to enforce the use of Builderprivate Computer(Builder builder) {this.cpu = builder.cpu;this.ram = builder.ram;this.storage = builder.storage;this.name = builder.name;}public static class Builder {private String cpu;private String ram;private Long storage = 1024L; // 默认值private String name;//设置属性时,非空校验public Builder setCpu(String cpu) {if (cpu == null || cpu.isEmpty()) {throw new IllegalArgumentException("CPU cannot be null or empty");}this.cpu = cpu;return this;}public Builder setRam(String ram) {if (ram == null || ram.isEmpty()) {throw new IllegalArgumentException("RAM cannot be null or empty");}this.ram = ram;return this;}public Builder setStorage(Long storage) {if (storage == null || storage <= 0) {throw new IllegalArgumentException("Storage must be greater than 0");}this.storage = storage;return this;}public Builder setName(String name) {this.name = name;return this;}public Computer build() {// 创建Computer对象前,非空校验if (this.cpu == null || this.cpu.isEmpty()) {throw new IllegalStateException("CPU is not set");}if (this.ram == null || this.ram.isEmpty()) {throw new IllegalStateException("RAM is not set");}if (this.storage == null || this.storage <= 0) {throw new IllegalStateException("Storage is not valid");}return new Computer(this);}}@Overridepublic String toString() {return "Computer{" +"name='" + name + '\'' +", cpu='" + cpu + '\'' +", ram='" + ram + '\'' +", storage=" + storage +'}';}
}

使用Demo如下:

public class BuilderDemo {public static void main(String[] args) {// 使用 Builder 构建一个 Computer 对象Computer computer = new Computer.Builder().setCpu("Intel i9").setRam("32GB").setStorage("1TB SSD").build();// 打印结果System.out.println(computer);}
}
http://www.dtcms.com/wzjs/167343.html

相关文章:

  • 青海省wap网站建设公司关键词优化推广公司
  • java动态网站建设视频域名注册需要什么条件
  • 网站站长统计怎么做sem运营
  • 学动漫设计好就业吗seo去哪里学
  • 在虚拟主机上建设多个网站网站推广的途径有哪些
  • 有关建设的新闻网站百度图片识别搜索
  • 上海医疗器械网站前置审批商丘seo优化
  • 高级的网站建设高端网站建设制作
  • 专业网站建设教程浏览器大全网站
  • 个人网站模块手机百度搜索app
  • 网站的建设与维护3步打造seo推广方案
  • 日照seo优化公司网站关键词排名优化推广软件
  • 企业网站建设空间咖啡seo是什么意思
  • 西安行业网站制作现在推广什么app最挣钱
  • 成都网站制作怎么收费品牌宣传有哪些途径
  • 西安有哪些做网站建设的公司百度一下官方下载安装
  • 北京制作公司网站外贸怎么建立自己的网站
  • 网页设计课程报告四年级下册数学优化设计答案
  • 黄浦网站设计网站引流推广软件
  • 网站招牌模板google seo是什么
  • 罗湖做网站公司排名seo外包公司兴田德润官方地址
  • 大连网站制作流程外贸接单平台哪个最好
  • 怎么创一个网站东莞寮步最新通知
  • 做网站推广哪家公司好网站排名查询工具
  • 网站建设流程图visio百度帐号管家
  • 商户网站建设公司google推广教程
  • 汕头市门户网站建设电商网站建设公司哪家好
  • 做的网站上更改内容改怎么办怎样在网上推广自己的产品
  • wordpress主题应该怎么添加谷歌搜索引擎优化
  • 网站设计论文题目网上营销网站