建造者模式除了上面的用途外,在開發中還有乙個常用的使用方式,
就是當乙個類構造器需要傳入很多引數時,如果建立這個類的例項,**可讀性會非常差,而且很容易引入錯誤,
此時就可以利用建造者模式進行重構。
重構前**如下:
public class phone
public string getcpu()
public void setcpu(string cpu)
public string getscreen()
public void setscreen(string screen)
public string getmemory()
public void setmemory(string memory)
public string getmainboard()
public void setmainboard(string mainboard)
@override
public string tostring() ';}}
public class client
}
package com.itheima.pattern.builder.demo2;
/** * @version v1.0
* @classname: phone
* @description: 手機類
* @author: dym
*/public class phone
@override
public string tostring() ';
}public static final class builder
public builder screen(string screen)
public builder memory(string memory)
public builder mainboard(string mainboard)
//使用構建者建立phone物件
public phone build() }}
package com.itheima.pattern.builder.demo2;
/** * @version v1.0
* @classname: client
* @description: todo(一句話描述該類的功能)
建造者模式擴充套件
建造者模式除了上面的用途外,在開發中還有乙個常用的使用方式,就是當乙個類構造器需要傳入很多引數時,如果建立這個類的例項,可讀性會非常差,而且很容易引入錯誤,此時就可以利用建造者模式進行重構。public class phone public string getcpu public void set...
建造者模式
1.定義 將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示。2.uml 類圖 結構 該結構 演示了複雜物件被一步一步建立的建造者模式。builder pattern structural example using system using system.collection...
建造者模式
軟體領域中的設計模式為開發人員提供了一種使用專家設計經驗的有效途徑。設計模式中運用了物件導向程式設計語言的重要特性 封裝 繼承 多型,真正領悟設計模式的精髓是可能乙個漫長的過程,需要大量實踐經驗的積累。最近看設計模式的書,對於每個模式,用c 寫了個小例子,加深一下理解。主要參考 大話設計模式 和 設...