理解抽象工廠模式的前提是掌握簡單工廠模式。
抽象工廠模式是簡單工廠模式的最終形態。
它與簡單工廠模式的唯一區別就是工廠的介面裡創造的是一系列抽象產品,而不再是乙個,這其實是簡單工廠模式的一種擴充套件。
*擴充套件乙個介面或者乙個類的方式通常有兩種:繼承和組合
圖例如下:
*其實抽象工廠模式就是為了解決產品不再是乙個的時候的問題。因為不管是工廠還是工廠方法,都有乙個缺陷那就是整個模式當中只能有乙個抽象產品。
*由於抽象工廠一旦定義,抽象產品的個數已經確定,所以最好在抽象產品的個數不會變化的前提下使用抽象工廠模式。
*彌補這一不足的辦法:繼承,即創造另乙個繼承體系去擴充套件現有的框架。
有關工廠的三種模式依次進化的原因;
*1.首先從簡單工廠模式進化到工廠方法,是為了彌補簡單工廠對修改開放的弊端,即簡單工廠模式我背了開閉原則。
*2.從工廠方法進化到抽象工廠,是因為抽象工廠彌補了工廠方法只能創造乙個系列產品的弊端。
抽象工廠模式個人理解
這個東西有點難懂,我也算是一知半解,就先把現在的理解寫一下吧。大學開學第一件事,大家都知道啊,是要軍訓,軍訓之前,有一件事我們都要做,那就是領軍訓的衣服。軍訓服裝分為上衣和下裝,每個人都有這倆件,這裡我們每個人都可以看成是乙個工廠,每個人身上的上衣個下裝是倆個產品族。這時候,學校領導就要安排人給大家...
關於抽象工廠模式的個人理解
感覺抽象工廠就是 比工廠模式 多了一種或多種生產抽象產品的方法,多了一套抽象產品.如果不用抽象工廠模式的 新來了一類產品 還需要新建一套工廠 其實感覺這三個工廠模式都是一層一層遞進.簡單工廠 對外修改開放.工廠是建立單一產品 用數學的角度來看 就是 1 2 4 乙個工廠,可以造兩種商品,每種商品還有...
工廠模式之抽象工廠
工廠模式之抽象工廠 是一種建立型設計模式,它能建立一系列相關的物件,而無需指定其具體類。類繼承自抽象工廠,即可生產指定物件。新增實體的時候無需修改已有 比如食物這個工廠,在現實世界中,它可以生產麵包 雞蛋 肉等,在魔法世界中,食物工廠可以生產魔法豆 會唱歌的火雞 hp口服液等,我們把食物比作是最大的...