建造者模式
## 1.什么是創建型設計模式
假如現在需要修建房子,那么就需要工人,設計師,土地,工人修改房子就需要在土地上建立
那么在代碼中,我們必須創建一個類用于封裝工人與房子之間的關系,現在設計師出來了,他就要想
工人們介紹房子怎么做,做什么什么樣子(原則上是給圖紙就行),在代碼中需要傳入,工人,有設計師
就行解說
## 2. 創建型設計他的模型是什么樣子
工人(I) Build 房間(C) Room
makeWindow() window
makeFloor() floor
getRoot()
設計師(C) Designer 工人關聯類(C) WorkBuilder
Order(Build) WorkerBuild implements Build
## 3.代碼實現
public interface Build {
public void makeWindow();
public void makeFloor();
public Room getRoom();
}
public class Room {
private String window;
private String fioor;
public String getWindow() { return window; }
public void setWindow(String window) {
this.window = window;
}
public String getFioor() {
return fioor;
}
public void setFioor(String fioor) {
this.fioor = fioor;
}
}
public class Designer {
public void order(Build build){
build.makeFloor();
build.makeWindow();
} }
public class WorkBuilder implements Build {
private Room room = new Room();
@Override
public void makeWindow() {
room.setFioor("地板 ");
}
@Override
public void makeFloor() {
room.setWindow("窗戶");
}
@Override
public Room getRoom() {
return room;
}
}
public class Client {
public static void main(String[] args) {
Build worker = new WorkBuilder(); //獲取工人對象
Designer designer = new Designer(); //獲取設計師對象
designer.order(worker); //設計師指揮工人工作
System.out.println(worker.getRoom());; //工人交房
}
}