建立者模式

2021-09-24 17:21:36 字數 1710 閱讀 3090

一、第一種方式

房子物件

public class product

public void setbuilda(string builda)

public string getbuildb()

public void setbuildb(string buildb)

public string getbuildc()

public void setbuildc(string buildc)

public string getbuildd()

public void setbuildd(string buildd)

@override

public string tostring()

}建造者

abstract class builder

具體建造者

public class concretebuilder extends builder

@override

void bulida()

@override

void bulidb()

@override

void bulidc()

@override

void bulidd()

@override

product getproduct()

}指揮建造者

public class director }呼叫

public class click

private void showbike(builder builder)

}二、第二種方式

房子物件

public class product

public void setbuilda(string builda)

public string getbuildb()

public void setbuildb(string buildb)

public string getbuildc()

public void setbuildc(string buildc)

public string getbuildd()

public void setbuildd(string buildd)

@override

public string tostring()

}建造者

abstract class builder

具體建造者(工人)

public class concretebuilder extends builder

@override

void bulida(string mes)

@override

void bulidb(string mes)

@override

void bulidc(string mes)

@override

void bulidd(string mes)

@override

product getproduct() }呼叫

public static void main(string args)

三、建造者模式與抽象工廠模式的比較

如果將抽象工廠模式看成汽車配件生產工廠,生產乙個產品族的產品,那麼建造者模式就是乙個汽車組裝工廠,通過對部件的組裝可以返回一輛完整的汽車

建立者模式

當我們使用抽象工廠時,在客戶端進行呼叫的時候,如果產品的類別比較多,那麼此時工廠返回的例項物件將會很多。客戶端得 將會大大增加,這將不利於程式的可讀性。為了解決此類問題,可以把所有例項的建立放在乙個類中去生成,這樣在客戶端只需要呼叫這個建立者類,大大減少客戶端的 量。1,所有動物類的介面 packa...

建立者模式

建造者模式的定義將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示 大話設計模式 舉了乙個很好的例子 建造小人,一共需建造6個部分,頭部 身體 左右手 左右腳。與工廠模式不同,建造者模式是在導向者的控制下一步一步構造產品的。建造小人就是在控制下一步步構造出來的。建立者模式可以能...

建立者模式

建造者模式也叫生成器模式,是由gof提出的23種設計模式中的一種。builder模式是一種物件建立型模式,用來隱藏復合物件的建立過程,它把復合物件的建立過程加以抽象,通過子類繼承和過載的方式,動態地建立具有復合屬性的物件。物件的建立 builder模式是為物件的建立而設計的模式 建立的是乙個復合物件...