建造者模式我的理解是指把構造和表示分離開,根據具體需求生產出相對應的對象; android
ConcreteBuilder 是Builder接口的具體實現類經過它就能夠產生不一樣的對象; ui
首先 對象
1 意圖:將一個複雜的對象的構建和他的表示分離,使得一樣的方式能夠建立符合實際開發需求的表示; 接口
2結構圖和代碼: 開發
eg: 源碼
經過android sdk 源碼咱們能夠看到 android的大量的使用對話框組件,它的調用方法就是構建,拼接,表示 ; it
Builder 經過setTitle() setMessage(),setIcon()等方法(構建)在create()中構造 sdk
(拼接)出一個AlertDialogInstance對象。 方法
調用者只須要根據實際需求把AlertDialogInstance對象show出去(表示)。 im
分析總結一下:
(1)建立其它的ConcreteBuilder
(2) 建立其它的ElseDialog;
(3) 經過1 2 步咱們就能夠完成咱們的抽象化的Builder
(4) 建立一個Context,把Builder注入進去生產出符合需求的Dialog (或者其它UI)對象。
我的觀點小小的總結,但願大神路過不要吐我口水!歡迎各類評論和討論!