java設計模式 建造者模式

2021-07-12 01:03:31 字數 1467 閱讀 6015

適用場景:

乙個物件有多個子物件構成,我們要建這個物件的時候,需要很多步驟,構建多個子物件,然後再由子物件構成乙個物件,我們就可以考慮用建造者模式

建造者本質:

讓建造子物件的builder和裝配物件director解耦,從而建造出複雜的物件

舉個例子:

我們來構建乙個電腦物件,它有滑鼠,顯示器,鍵盤等子物件構成,我們如何來裝配這個對呢

/**

* 電腦實體類

* *@author liuxg

*@date 2023年5月24日 下午8:37:58

*/public

class

computer

public

void

setmonitor(monitor monitor)

public keyboard getkeyboard()

public

void

setkeyboard(keyboard keyboard)

public mouse getmouse()

public

void

setmouse(mouse mouse)

}class monitor

}class keyboard

}class mouse

}

接下來我們來建立乙個構建子物件的builder來構建子物件

/**

* 電腦建造器

*@author liuxg

*@date 2023年5月24日 下午8:40:12

*/public

inte***ce

computerbuilder

/** * 電腦建造起的實現類

*@author liuxg

*@date 2023年5月24日 下午8:40:48

*/public

class

computerbuilderimpl

implements

computerbuilder

@override

public keyboard buildkeyboard()

@override

public mouse buildmouse()

}

然後我們再定義乙個類,專門用來專配電腦,這樣子就實現構建者和組裝者的解耦和分離

/**

* 裝配器

*@author liuxg

*@date 2023年5月24日 下午8:42:18

*/public

class

dirctor

}

我們來使用客戶端測試一下

public

class client01

}

java設計模式 建造者模式

分為四部分 產品角色,抽象構建者,具體構建者,指揮者 建造者模式 使用者不需要知道具體的構造結構過程,只需要與指揮者進行溝通即可。指揮者根據不同的構建者得到不同的產品。構建者分裝了整個產品的構建,是的產品能夠完整的構建出來。產品角色 public class car 抽象構建者 public int...

Java設計模式 建造者模式

建造者模式就是一步一步的建立乙個複雜的物件,而且允許使用者指定複雜物件的型別和內容。建造者的模式結構一般如下圖所示。builder 類是乙個抽象類,用於定義一些建立子部件的方法,builder類中應該還有乙個 getresult 方法,用於將建立好的部件組裝成乙個產品返回。director 類又稱為...

Java設計模式 建造者模式

建造者 builder 模式,又稱為生成器模式。它是將乙個複雜的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示。當採用了建造者模式,使用者就只需要指定需要建造的型別就可以得到想要的最終結果,至於具體的構建過程和構建細節不需要過多知曉。director 指揮者,主要負責排程builder介面...