23種設計模式(建造者模式)

2021-10-13 17:15:53 字數 2814 閱讀 1762

(願歲月清淨)

//產品,房子

public

class

product

public

void

setbuildera

(string buildera)

public string getbuilderb()

public

void

setbuilderb

(string builderb)

public string getbuilderc()

public

void

setbuilderc

(string builderc)

public string getbuilderd()

public

void

setbuilderd

(string builderd)

@override

public string tostring()

';}}

2.builder(抽象的建造者)

package com.kuang.builder;

//抽象的建造者:方法

public

abstract

class

builder

3.worker
package com.kuang.builder;

//具體的建造者:工人

public

class

worker

extends

builder

@override

void

buildera()

@override

void

builderb()

@override

void

builderc()

@override

void

builderd()

@override

product getproduct()

}

4.director
package com.kuang.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()

';}}

2.builder
package com.kuang.builder.demo02;

//建造者

public

abstract

class

builder

3.worker
package com.kuang.builder.demo02;

public

class

worker

extends

builder

@override

builder builda

(string msg)

@override

builder buildb

(string msg)

@override

builder buildc

(string msg)

@override

builder buildd

(string msg)

@override

product getproduct()

}

4.test
package com.kuang.builder.demo02;

public

class

test

}

5.執行結果
product

23種設計模式 建造者模式

需要建立乙個複雜物件的時候,這個物件通過一定的步驟組合而成,並且步驟一步都不能少。玩家 客戶 告訴拳頭 指揮者 我想要乙個什麼樣的英雄,拳頭告訴手下的程式設計師去做乙個這樣的英雄,程式設計師去屬性庫 抽象建造屬性類 中找,符合這樣英雄的抽象屬性,然後具體去設計這個英雄的各種屬性。通過建構函式,讓客戶...

23種設計模式之建造者模式

建造模式的本質 分離了物件子元件的單獨構造 有builder來負責 和裝配 由diretor負責 從而可以構造出複雜的物件。這種模式適用於 某個物件的構建過程複雜的情況下使用。由於實現了構建和裝配的解耦。不同的構建器,相同的裝配,也可以做出不同的物件 相同的構建器,不同的裝配順序也可以做出不同的物件...

23種設計模式之建造者模式

主要作用 在使用者不知道物件的建造過程和細節的情況下就可以直接建立複雜的物件。使用者只需要給出指定複雜物件的型別和內容,建造者模式負責按順序建立複雜物件 把內部的建造過程和細節隱藏起來 例子 角色分析 建圖紙 記錄建房的方法,步驟 抽象的建造者 方法 public abstract class bu...