目录
- 介绍
- 使用场景
- 实现
介绍
- 建造者模式是一个创建型模式,它允许用户在不知道内部构造的情况下,一步步精细控制对象的构造流程来创造出一个复杂对象。
- 建造者模式实现了复杂对象构建和表示的分离,同样的构建过程可以创建不同的表示。
使用场景
建造者模式用于构建复杂对象,它锁构建的对象一般有以下特征
- 相同方法,不同的执行顺序,产生不同的事件结果。
- 多个部件或零件,都可以装配到一个对象中,但是产生的运行结果却并不相同。
- 当对象初始化特别复杂,如参数多,或者参数有默认值。
实现
public class Computer {
protected String mBoard;
protected String mDisplay;
protected String mCpu;
protected String mGpu;
protected String mOs;
public void setBoard(String board) {
mBoard = board;
}
public void setDisplay(String display) {
mDisplay = display;
}
public void setCpu(String cpu) {
mCpu = cpu;
}
public void setGpu(String gpu) {
mGpu = gpu;
}
public void setOs(String os) {
mOs = os;
}
public static class Builder {
Computer computer;
public Builder() {
computer = new Computer();
}
public Builder board(String board) {
computer.setBoard(board);
return this;
}
public Builder display(String display) {
computer.setDisplay(display);
return this;
}
public Builder cpu(String cpu) {
computer.setCpu(cpu);
return this;
}
public Builder gpu(String gpu) {
computer.setGpu(gpu);
return this;
}
public Builder os(String os) {
computer.setOs(os);
return this;
}
public Computer build() {
return computer;
}
}
}