抽象工廠模式(abstractfactory)
每乙個模式都是針對一定問題的解決方案,工廠方法模式針對的是乙個產品等級結構;而抽象工廠模式針對的是多個產品等級結果。
產品族:是指位於不同產品等級結構中,功能相關聯的產品組成的家族。一般是位於不同的等級結構中的相同位置上。
每乙個產品等級結構中有多少個具體的產品,就有多少個產品族,也就會在工廠等級結構中發現多少個具體工廠。
一般而言,有多少個產品等級結構,就會在工廠角色中發現多少個工廠方法。
具體工廠(工廠類)中有工廠方法(工廠類中的方法)
// 兩種抽象產品(兩個結構等級):水果、蔬菜
inte***ce fruit
inte***ce veggie
// 四種具體產品:北方水果,熱帶水果,北方蔬菜,熱帶蔬菜
// northern fruit
class northernfruit implements fruit
string getname()
void setname(string name)
}// tropicalfruit
class tropicalfruit implements fruit
string getname()
void setname(string name)
}// northernveggie
class northernveggie implements veggie
string getname()
void setname(string name)
}// tropicalveggie
class tropicalveggie implements veggie
string getname()
void setname(string name)
}// 抽象工廠角色
public inte***ce gardener
// 具體工廠角色:北方工廠,熱帶角色
class northerngardener implements gardener
veggie createveggie(string name)
}class tropicalgardener implements gardener
veggie createveggie(string name)
} private void test()
public static void main(string args)
}
設計模式 建立型 抽象工廠
pragma once ifndef abstractfactory h define abstractfactory h 抽象基類abstractproducta,代表產品a 的抽象 class abstractproducta virtual abstractproducta 派生類concre...
設計模式 建立型 抽象工廠模式
建立性模式有五種 1.工廠模式 簡單工廠模式 經常被用到,不屬於gof23種設計模式 工廠方法模式 抽象工廠模式 2.建造者模式 3.原型模式 4.單例模式 抽象工廠模式是所有形態的工廠模式中最為抽象和最具一般性的一種形態。抽象工廠模式是指當有多個抽象角色時,使用的一種工廠模式。抽象工廠模式可以向客...
設計模式 建立型 抽象工廠模式
有點複雜。一般的工廠模式下,每個實體類都需要乙個對應的工廠,當實體類過多時工廠的數量也會變多。當實體類還有子類時,我們需要的工廠就更多了。抽象工廠模式是將所有工廠的共性抽象出來 public inte ce animalfactory 生產母狗和母貓 public class femaleanima...