电脑组装工厂可以将CPU、内存、硬盘、主机、显示器等硬件设备组装在一起构成一台完整的电脑,且构成的电脑可以是笔记本,也可以是台式机,还可以是不提供显示器的服务器主机。对于用户而言,无须关心电脑的组成设备和组装过程,工厂返回给用户的是完整的电脑对象。使用建造者模式实现电脑组装过程,要求绘制类图并编程实现。如何用java实现,分出具体步骤
时间: 2024-03-05 22:49:24 浏览: 307
熟悉计算机的主机有哪些基本硬件组成-电脑硬件知识学习
以下是使用Java语言实现电脑组装工厂的代码,具体步骤如下:
1. 创建电脑类`Computer`,该类包含CPU、内存、硬盘、主机和显示器等属性,以及相应的setter和getter方法。
```java
public class Computer {
private String cpu;
private String memory;
private String hardDisk;
private String host;
private String display;
public String getCpu() {
return cpu;
}
public void setCpu(String cpu) {
this.cpu = cpu;
}
public String getMemory() {
return memory;
}
public void setMemory(String memory) {
this.memory = memory;
}
public String getHardDisk() {
return hardDisk;
}
public void setHardDisk(String hardDisk) {
this.hardDisk = hardDisk;
}
public String getHost() {
return host;
}
public void setHost(String host) {
this.host = host;
}
public String getDisplay() {
return display;
}
public void setDisplay(String display) {
this.display = display;
}
@Override
public String toString() {
return "Computer: " + host + ", " + display + ", " + cpu + ", " + memory + ", " + hardDisk;
}
}
```
2. 创建电脑构造器类`ComputerBuilder`,该类包含添加CPU、内存、硬盘、主机和显示器等方法,以及返回电脑对象的方法`build()`。
```java
public class ComputerBuilder {
private Computer computer;
public ComputerBuilder() {
this.computer = new Computer();
}
public void addCpu(String cpu) {
this.computer.setCpu(cpu);
}
public void addMemory(String memory) {
this.computer.setMemory(memory);
}
public void addHardDisk(String hardDisk) {
this.computer.setHardDisk(hardDisk);
}
public void addHost(String host) {
this.computer.setHost(host);
}
public void addDisplay(String display) {
this.computer.setDisplay(display);
}
public Computer build() {
return this.computer;
}
}
```
3. 创建导演类`Director`,该类包含组装电脑的方法`constructComputer()`,该方法接受一个`ComputerBuilder`对象,并调用该对象的添加硬件设备的方法,最终返回组装好的电脑对象。
```java
public class Director {
private ComputerBuilder builder;
public Director(ComputerBuilder builder) {
this.builder = builder;
}
public Computer constructComputer(String cpu, String memory, String hardDisk, String host, String display) {
this.builder.addCpu(cpu);
this.builder.addMemory(memory);
this.builder.addHardDisk(hardDisk);
this.builder.addHost(host);
this.builder.addDisplay(display);
return this.builder.build();
}
}
```
4. 在主函数中,创建电脑构造器、导演对象和所需的CPU、内存、硬盘、主机和显示器等对象,然后调用导演对象的`constructComputer()`方法,传入所需的硬件设备对象,并输出组装好的电脑信息。
```java
public class Main {
public static void main(String[] args) {
// 创建电脑构造器
ComputerBuilder builder = new ComputerBuilder();
// 创建导演
Director director = new Director(builder);
// 定义所需的CPU、内存、硬盘、主机和显示器对象
String myCpu = "Intel Core i7";
String myMemory = "16GB DDR4";
String myHardDisk = "512GB SSD";
String myHost = "Desktop";
String myDisplay = "27-inch LED";
// 组装电脑
Computer myComputer = director.constructComputer(myCpu, myMemory, myHardDisk, myHost, myDisplay);
// 输出组装好的电脑信息
System.out.println(myComputer);
}
}
```
以上是使用Java语言实现电脑组装工厂的具体步骤和代码实现。
阅读全文