二、工廠模式
三、抽象工廠模式
四、工廠模式小結
其他設計模式
簡單工廠模式是屬於建立型模式,是工廠模式的一種。簡單工廠模式是由乙個工廠物件決定建立出哪一種產品類的例項。簡單工廠模式是工廠模式家族中最簡單實用的模式。
簡單工廠模式:定義了乙個建立物件的類,由這個類來封裝例項化物件的行為。
在軟體開發中,當我們會用到大量的建立某種、某類或者某批物件時,就會使用到工廠模式。
(1)建立抽象類及其子類
public
abstract
class
machine
public
void
close()
public
void
setname
(string name)
}
public
class
foodmachine
extends
machine
@override
public
void
product()
}
public
class
clothesmachine
extends
machine
@override
public
void
product()
}
(2)建立工廠類
public
class
******factory
else
if(ordermachine.
equals
("clothes"))
return machine;
}}
(3)測試簡單工廠模式
工廠方法模式:定義了乙個建立物件的抽象方法,由子類決定要例項化的類。工廠方
法模式將物件的例項化推遲到子類。
(1)建立抽象類及其子類
public
abstract
class
machine
public
void
close()
public
void
setname
(string name)
}
public
class
flourmachine
extends
machine
@override
public
void
product()
}
public
class
breadmachine
extends
machine
@override
public
void
product()
}
public
class
manclothesmachine
extends
machine
@override
public
void
product()
}
public
class
femaleclothesmachine
extends
machine
@override
public
void
product()
}
(2)建立抽象工廠和抽象工廠子類
public
abstract
class
ordermachine
while
(true);
}private string gettype()
catch
(ioexception e)
}}
public
class
clothesorde***ctory
extends
ordermachine
else
if(ordertype.
equals
("female"))
return machine;
}}
public
class
foodorde***ctory
extends
ordermachine
else
if(ordertype.
equals
("flour"))
return machine;
}}
(3)建立測試類
抽象工廠模式可以將簡單工廠模式和工廠方法模式進行整合。
從設計層面看,抽象工廠模式就是對工廠模式的改進(或者稱為進一步的抽象)。
將工廠抽象成兩層,抽象工廠和具體實現的工廠子類。程式設計師可以根據建立物件型別使用對應的工廠子類。這樣將單個的簡單工廠類變成了工廠簇,更利於**的維護和擴充套件。
(1)工廠模式第一步中的抽象類及其子類不需要改變,新建抽象工廠和抽象工廠的實現類。
public
inte***ce
abstractfactory
public
class
clothesorde***ctory
implements
abstractfactory
else
if(ordertype.
equals
("female"))
return machine;
}}
public
class
foodorde***ctory
implements
abstractfactory
else
if(ordertype.
equals
("flour"))
return machine;
}}
public
class
ordermachine
private
void
setfactory
(abstractfactory abstractfactory)
while
(true);
}private string gettype()
catch
(ioexception e)
}}
(3)新建測試類
工廠模式介紹
工廠模式 實現了建立者和呼叫者的分離。詳細分類 a.簡單工廠模式 用來生生同一等級的結構中的任意產品 對於新增的產品,需要修改已有的 b.工廠方法模式 用來生產同一等級中的固定的產品 支援增加任意產品 c.抽象工廠模式 用來生產不同的產品族的全部產品。對於新增產品,無能為力,支援增加產品族 抽象工廠...
工廠模式介紹
通過工廠類,來建立物件,不再直接去建立物件使用 解耦 開發中你會實在地體會到解耦是件多麼重要的事,越複雜越tt 注 什麼是耦合性?public class actionservletcontroller 如果要修改物件userserviceimpl,那還要去actionservletcontroll...
factory pattern工廠模式介紹
所謂工廠是指可以生產物件的工廠,通過傳入指定的引數得到產品。比如定義了乙個汽水工廠 public class juicefactory catch return juice 通過傳入乙個汽水的類,便可以源源不斷地獲得美味的汽水了。汽水可以抽象為乙個介面,這樣不同種類的汽水只要實現了這個介面便可以直接...