java写一、建造者模式练习1、电脑组装工厂可以将cpu、主板、显卡、显示器等硬件设备组装在一起构成一台完整的电脑, 且构成的电脑可以是笔记本, 也可以是台式机。对于用户而言, 无须关心电脑的组成设备和组装过程, 工厂返回给用户的是完整的电脑对象。使用建造者模式实现电脑组装过程, 要求编程实现。builderdirectorbuildcpu ()voidbuildmotherboard 0voidconstruct ( ) : productbuildgrapgics ()voidbuilddisplay 0voidgetproduct ()productconcretebuilder1contretebuilder2buildcpu (): voidbuildcpu ()voidbuildmotherboard0: voidbuildmotherboard0voidbuildgrapgics (): voidbuildgrapgics 0void+ builddisplay 0: voidbuilddisplay (): voidgetproduct (): productgetpr


以下是一个使用 Java 实现的建造者模式来模拟电脑组装工厂的示例代码: ```java // 产品类:电脑 class Computer { private String cpu; private String motherboard; private String graphicsCard; private String display; public String getCpu() { return cpu; } public void setCpu(String cpu) { this.cpu = cpu; } public String getMotherboard() { return motherboard; } public void setMotherboard(String motherboard) { this.motherboard = motherboard; } public String getGraphicsCard() { return graphicsCard; } public void setGraphicsCard(String graphicsCard) { this.graphicsCard = graphicsCard; } public String getDisplay() { return display; } public void setDisplay(String display) { this.display = display; } @Override public String toString() { return "Computer{" + "cpu='" + cpu + '\'' + ", motherboard='" + motherboard + '\'' + ", graphicsCard='" + graphicsCard + '\'' + ", display='" + display + '\'' + '}'; } } // 抽象建造者 abstract class ComputerBuilder { protected Computer computer; public Computer getComputer() { return computer; } public abstract void buildCpu(); public abstract void buildMotherboard(); public abstract void buildGraphicsCard(); public abstract void buildDisplay(); } // 具体建造者 1:笔记本电脑建造者 class LaptopBuilder extends ComputerBuilder { public LaptopBuilder() { computer = new Computer(); } @Override public void buildCpu() { computer.setCpu("Laptop CPU"); } @Override public void buildMotherboard() { computer.setMotherboard("Laptop Motherboard"); } @Override public void buildGraphicsCard() { computer.setGraphicsCard("Laptop Graphics Card"); } @Override public void buildDisplay() { computer.setDisplay("Laptop Display"); } } // 具体建造者 2:台式电脑建造者 class DesktopBuilder extends ComputerBuilder { public DesktopBuilder() { computer = new Computer(); } @Override public void buildCpu() { computer.setCpu("Desktop CPU"); } @Override public void buildMotherboard() { computer.setMotherboard("Desktop Motherboard"); } @Override public void buildGraphicsCard() { computer.setGraphicsCard("Desktop Graphics Card"); } @Override public void buildDisplay() { computer.setDisplay("Desktop Display"); } } // 指挥者 class Director { public void construct(ComputerBuilder builder) { builder.buildCpu(); builder.buildMotherboard(); builder.buildGraphicsCard(); builder.buildDisplay(); } } public class ComputerAssembly { public static void main(String[] args) { // 笔记本电脑组装 LaptopBuilder laptopBuilder = new LaptopBuilder(); Director director = new Director(); director.construct(laptopBuilder); Computer laptop = laptopBuilder.getComputer(); System.out.println("Laptop: " + laptop); // 台式电脑组装 DesktopBuilder desktopBuilder = new DesktopBuilder(); director.construct(desktopBuilder); Computer desktop = desktopBuilder.getComputer(); System.out.println("Desktop: " + desktop); } } ``` 在上述代码中,我们定义了`Computer`类表示电脑产品,`ComputerBuilder`抽象类作为建造者的抽象,`LaptopBuilder`和`DesktopBuilder`作为具体的建造者,`Director`类负责指挥建造过程。在`main`方法中分别组装了笔记本电脑和台式电脑并输出其信息。 [2024-10-31 16:21:50 | AI写代码神器 | 909点数解答]
- java写一、建造者模式练习1、电脑组装工厂可以将cpu、主板、显卡、显示器等硬件设备组装在一起构成一台完整的电脑, 且构成的电脑可以是笔记本, 也可以是台式机。对于用户而言, 无须关心电脑的组成设备和组装过程, 工厂返回给用户的是完整的电脑对象。使用建造者模式实现电脑组装过程, 要求编程实现。builderdirectorbuildcpu ()voidbuildmotherboard 0voidconstruct ( ) : productbuildgrapgics ()voidbuilddisplay 0voidgetproduct ()productconcretebuilder1contretebuilder2buildcpu (): voidbuildcpu ()voidbuildmotherboard0: voidbuildmotherboard0voidbuildgrapgics (): voidbuildgrapgics 0void+ builddisplay 0: voidbuilddisplay (): voidgetproduct (): productgetpr(909点数解答 | 2024-10-31 16:21:50)124
- 一、建造者模式练习1、电脑组装工厂可以将cpu、主板、显卡、显示器等硬件设备组装在一起构成一台完整的电脑, 且构成的电脑可以是笔记本, 也可以是台式机。对于用户而言, 无须关心电脑的组成设备和组装过程, 工厂返回给用户的是完整的电脑对象。使用建造者模式实现电脑组装过程, 要求编程实现。builderdirectorbuildcpu ()voidbuildmotherboard 0voidconstruct ( ) : productbuildgrapgics ()voidbuilddisplay 0voidgetproduct ()productconcretebuilder1contretebuilder2buildcpu (): voidbuildcpu ()voidbuildmotherboard0: voidbuildmotherboard0voidbuildgrapgics (): voidbuildgrapgics 0void+ builddisplay 0: voidbuilddisplay (): voidgetproduct (): productgetproduct(1205点数解答 | 2024-10-31 16:20:44)300
- e (251284) task_wdt: task watchdog got triggered. the following tasks/users did not reset the watchdog in time: e (251284) task_wdt: - idle0 (cpu 0) e (251284) task_wdt: tasks currently running: e (251284) task_wdt: cpu 0: lv_tick_task e (251284) task_wdt: cpu 1: idle1 e (251284) task_wdt: print cpu 0 (current core) backtrace backtrace: 0x420397bf:0x3fc9dcc0 0x42039bdc:0x3fc9dce0 0x40377915:0x3fc9dd10 0x420162de:0x3fcb55a0 0x420250fa:0x3fcb55c0 0x4204c7d1:0x3fcb5600 0x42013716:0x3fcb5620 0x42(110点数解答 | 2024-10-27 13:27:25)173
- e (251284) task_wdt: task watchdog got triggered. the following tasks/users did not reset the watchdog in time: e (251284) task_wdt: - idle0 (cpu 0) e (251284) task_wdt: tasks currently running: e (251284) task_wdt: cpu 0: lv_tick_task e (251284) task_wdt: cpu 1: idle1 e (251284) task_wdt: print cpu 0 (current core) backtrace backtrace: 0x420397bf:0x3fc9dcc0 0x42039bdc:0x3fc9dce0 0x40377915:0x3fc9dd10 0x420162de:0x3fcb55a0 0x420250fa:0x3fcb55c0 0x4204c7d1:0x3fcb5600 0x42013716:0x3fcb5620 0x42(317点数解答 | 2024-10-27 13:28:47)216
- import javax.swing.*; import java.awt.*; import java.awt.datatransfer.clipboard; import java.awt.datatransfer.stringselection; import java.awt.datatransfer.transferable; import java.awt.event.*; import java.io.*; import java.nio.file.files; import java.nio.file.path; import java.nio.file.paths; import java.time.localdatetime; import java.util.hashmap; import java.util.list; import java.util.map; import java.util.random; public class copy { static private final jtextarea textarea = new jtext(1497点数解答 | 2024-08-25 09:40:33)322
- 1、用类描述计算机CPU的速度和硬件的容量。要求java应用程序有4个类,名字分别是PC、CPU、Hardisk、 和Test,其中Test是主类。 2、 其中,CPU类要求getSpeed()返回speed值,要求setSpeed(int m)方法将参数m的值赋值给speed;HardDisk类要求 getAmount()返回amount的值,要求setAmount(int m)方法将参数m赋值给amount;PC类要求setCPU(CPU c)将参数c的值赋值给cpu,要求setHardDisk(HardDisk h)方法将参数h的值赋值给HD,要求show()方法能显示cpu的速度和硬盘容量。 3.主类的要求 (1)main方法中创建一个CPU对象cpu,cpu将自己的speed设置为2200。 (2)main方法中创建一个HardDisk对象disk,disk将自己的amount设置为200。 (3)main方法中创建一个PC对象pc。 (4)pc调用setCPU(CPU c)方法,调用时实参时cpu。 ( 5)pc调用setHardDisk(HardDis(441点数解答 | 2025-04-15 16:14:52)123
- 1. 爬取和分析京东网站数据; 2. 用自己的学号作为项目名称; 3. 用搜索关键字爬取“京东网站”,并爬取“笔记本”商品的下列数据:商品名、价格、店铺名、评价数; 4. 将数据保存到 mongodb数据库中; 5. 用pandas工具包读取数据库中的数据进行下列分析,并用matplotlib可视化输出: a. 读取数据库中“笔记本”数据。 b. 预处理:将价格转换为浮点数,将评价数转换为整数。 c. 分析笔记本价格分布:直方图(x轴表示价格、y轴表示该价格区间的商品数量),添加样本总数说明。 d. 分析联想各型号笔记本的销售量和均价,绘制两个柱状图:x轴表示笔记本型号、y轴表示该笔记本销量或均价,并标明销量或均价值。(968点数解答 | 2024-12-12 00:20:07)159
- dm.jdbc.driver.dmexception: 数据溢出 at dm.jdbc.driver.dberror.throwexception(dberror.java:636) at dm.jdbc.c.b.p.s(msg.java:225) at dm.jdbc.c.b.p.p(msg.java:185) at dm.jdbc.c.b.p.o(msg.java:166) at dm.jdbc.c.a.a(dbaccess.java:776) at dm.jdbc.c.a.a(dbaccess.java:327) at dm.jdbc.c.a.a(dbaccess.java:435) at dm.jdbc.driver.dmdbpreparedstatement.executeinner(dmdbpreparedstatement.java:284) at dm.jdbc.driver.dmdbpreparedstatement.do_executequery(dmdbpreparedstatement.java:383) at dm.jdbc.driver.(598点数解答 | 2024-10-15 15:48:38)224
- 问题排查:dm.jdbc.driver.dmexception: 数据溢出 at dm.jdbc.driver.dberror.throwexception(dberror.java:636) at dm.jdbc.c.b.p.s(msg.java:225) at dm.jdbc.c.b.p.p(msg.java:185) at dm.jdbc.c.b.p.o(msg.java:166) at dm.jdbc.c.a.a(dbaccess.java:776) at dm.jdbc.c.a.a(dbaccess.java:327) at dm.jdbc.c.a.a(dbaccess.java:435) at dm.jdbc.driver.dmdbpreparedstatement.executeinner(dmdbpreparedstatement.java:284) at dm.jdbc.driver.dmdbpreparedstatement.do_executequery(dmdbpreparedstatement.java:383) at dm.jdbc.dr(403点数解答 | 2024-10-15 15:48:41)915
- 建造者模式练习1、电脑组装工厂可以将cpu、主板、显卡、显示器等硬件设备组装在一起构成一台完整的电脑, 且构成的电脑可以是笔记本, 也可以是台式机。对于用户而言, 无须关心电脑的组成设备和组装过程, 工厂返回给用户的是完整的电脑对象。要求E-R图实现 (179点数解答 | 2025-03-19 16:23:03)72
- 编写一个函数,该函数可以将一个对象的所有属性值转换为字符串类型,包括嵌套的对象属性。如果属 性值已经是字符串,则保持不变。要求使用递归方式实现。 输入:对象 { a: 1, b: { c: 2, d: '3' }, e: [4, 5, 6] } 输出:对象 { a: "1", b: { c: "2", d: "3" }, e: ["4", "5", "6"] }(143点数解答 | 2024-11-08 10:25:12)282
- 编写一个函数,该函数可以将一个对象的所有属性值转换为字符串类型,包括嵌套的对象属性。如果属性值已经是字符串,则保持不变。要求使用递归方式实现。 输入:对象 { a: 1, b: { c: 2, d: '3' }, e: [4, 5, 6] } 输出:对象 { a: "1", b: { c: "2", d: "3" }, e: ["4", "5", "6"] }(142点数解答 | 2024-11-11 21:06:15)176