總體來說,工廠模式適合:凡是出現了大量的產品需要建立,並且具有共同的介面時,可以通過工廠方法模式進行建立。在以上的三種模式中,第一種如果傳入的字串有誤,不能正確建立物件,第三種相對於第二種,不需要例項化工廠類,所以,大多數情況下,我們會選用第三種——靜態工廠方法模式。
抽象工廠模式,建立多個工廠類,這樣一旦需要增加新的功能,直接增加新的工廠類就可以了,不需要修改之前的**。
單例模式:記憶體中該類的物件只允許建立乙個例項。
public class singleton
/* 此處使用乙個內部類來維護單例 */
private static class singletonfactory
/* 獲取例項 */
public static singleton getinstance()
/* 如果該物件被用於序列化,可以保證物件在序列化前後保持一致 */
public object readresolve()
}
建造者模式:
建造者模式則是將各種產品集中起來進行管理,用來建立復合物件,所謂復合物件就是指某個類具有不同的屬性,其實建造者模式就是前面抽象工廠模式和最後的test結合起來得到的。
public class builder
/* 深複製 */
public object deepclone() throws ioexception, classnotfoundexception
public string getstring()
public void setstring(string string)
public serializableobject getobj()
public void setobj(serializableobject obj)
}class serializableobject implements serializable
Java設計模式總結
一 策略模式 1 概念 策略模式定義了演算法族,並將演算法族封裝起來,演算法可以相互替換,演算法的變動不會影響請求該演算法的客戶。2 使用場景 1 在不同類需要不同行為,或者不同類需要相同行為但行為表現 內容 不同時,可以使用strategy模式。需注意,在設計繼承時需考慮是否使用策略模式,尤其繼承...
Java 設計模式總結
本文是學習了郭霖部落格後進行的知識點總結,以便日後自己回顧使用。1.模板方法 template method 我的理解 在模板父類中定義需要完成的基本功能,子類中去區別實現。郭神的定義 定義乙個操作中的演算法的骨架,而將一些步驟延遲到子類中,模板方法使得子類可以不改變乙個演算法的結構即可重定義該演算...
JAVA常用設計模式總結
導言 設計模式常常被分為以下三類 建立型 建立物件時,不再由我們直接例項化物件 而是根據特定場景,由程式來確定建立物件的方式。如,工廠方法 抽象工廠模式 單例模式等。構造型用於幫助將多個物件組織成更大的結構。如,介面卡模式 橋接模式 組合器模式等。行為型用於幫助系統間物件的通訊,以及如何控制複雜系統...