定義:簡單的工廠模式屬於建立型模式,又被稱為靜態工廠方法模式。
抽象產品類
建立乙個計算機抽象產品類,**如下:
public
abstract
class
computer
具體產品類
具體的計算機產品分別是聯想,惠普和華碩計算機:
public
class
hpcomputer
extends
computer
}public
class
lenovocomputer
extends
computer
}public
class
asuscomputer
extends
computer
}
工廠類
工廠類提供了乙個靜態方法createcomputer用來生產計算機。我們只需要傳入自己想生產的計算機的品牌,它就會例項化相應品牌的計算機物件。
public
class compute***ctory
return computer;
}public
static
void
main(string args)
}
簡單工廠模式的場景和優缺點
優點:使使用者根據引數獲得對應的類例項,避免了直接例項化類,降低了耦合性。
缺點:可例項化的型別在編譯期間已經被確定。如果增加新型別,則需要修改工廠,這違背了開放封閉原則。簡單工廠需要知道所有要生成的型別,當子類過多或者子類層次過多時不適合使用。
設計模式二之 簡單工廠模式
簡單工廠模式 工廠類 業務類 具體實現類 自我理解 通過類的名字獲取工廠中的物件,主要是工廠幫助生成了所需的物件,工廠類 service requiredargsconstructor onconstructor autowired public class factory return null ...
設計模式 工廠模式之簡單工廠模式
定義 由乙個工廠物件 工廠類 來指定建立某乙個產品類的例項。使用場景 客戶端只需傳入指定的引數即可,工廠類負責建立的物件較少 因為指定了傳入的引數 介面類 本想用iphone命名的,見諒 public inte ce phone實現介面類 public class huaweiphone imple...
設計模式(二) 工廠模式(簡單工廠)
我們在學習乙個東西之前,應該要先了解下他為什麼出現,他解決了什麼問題。這樣才可以帶著思考的高效學習。以資料庫為例,我們知道常見的關係型資料庫有mysql sqlserver oracle等,每種資料庫連線例項的建立都是複雜且易錯麻煩的。如果將這些連線例項交給使用者來建立,是十分不合適的。我們就希望有...