Builder設計模式原理

2021-08-03 02:16:43 字數 1634 閱讀 1994

通過本篇的學習,您將掌握:

1、什麼是builder模式

2、builder模式的運用場景

3、如何封裝builder模式

4、如何使用封裝builder

一、什麼是builder模式

是一步一步建立乙個複雜物件的建立型模式,允許使用者在不知道內部構建的細節的情況下,可以更精細地控制物件的構造流程。該模式是為了將構建複雜物件的過程和它的部件解耦。使得構建過程和部件的表示隔離開來。

二、builder模式的應用場景

1、相同的方法,不同的執行順序,產生不同的事件結果時。

2、多個部件或零件,都可以裝配到乙個物件中,但產生的結果又不相同時。

3、產品非常複雜

4、當初始化乙個物件特別複雜,如引數多的時候

三、builder的封裝

builder模式主要由三大塊組成:

1、產品的抽象類

2、抽象builder類,規範產品的組建

3、builder的具體類。實現對抽象bilder類的繼承,實現具體的功能

通過乙個demo的具體**來體現builder在專案中的具體使用:

1、產品抽象類

public abstract class people ';

}protected string m***;

public people setname(string name)

public people setage(string age)

public abstract void setm***();

}

2、builder抽象類:

public abstract class builder 

@override

public void setm***() }}

3、builder的實現類:

public class peoplebuilder extends builder 

@override

public peoplebuilder setbuildage(string age)

@override

public peoplebuilder setbuild***()

@override

public people create()

}

4、最後,我們看下怎麼呼叫我們封裝好的builder模式:

people people = new peoplebuilder()

.setbuild***()

.setbuildage("15")

.setbuildname("小公尺")

.create();

log.i(tag,"people:"+people.tostring())

Builder設計模式

builder設計模式一般會採用鏈式程式設計結構 案例分析?構建一台電腦 記憶體 cpu 顯示卡等等 記憶體 r am 執行記憶體 和 rom 非執行記憶體 分為了一些角色 builder 抽象類 規範產品組裝 案例中builder介面 concratebuilder 具體組裝產品類 案例macbo...

Builder設計模式

當乙個類需要過載多個構造方法時,並且引數隨機使用時,builder模式就出現了。官方說法 將乙個複雜的物件的構建與他的表示相分離,使用者可以一步一步構建乙個比較複雜的物件。自己理解 先通過某種方式取得構造物件所需要的所有引數,再通過這些引數一次性構建這個物件。實現如下 package com.dem...

設計模式 Builder模式

bulder模式是一步步建立乙個複雜物件的建立模型,它允許使用者在不知道內部構建細節 的情況下可以更精細地控制物件的構造流程該模式為將構建複雜物件的過程和它的部件 解耦,使得構建過程和部件的表示隔離開來。將乙個負責物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示 3.1 相同的方法,不...