就是建立乙個工廠類,對實現了同一介面的一些類進行例項的建立。簡單工廠模式的實質
是由乙個工廠類根據傳入的引數,動態決定應該建立哪乙個產品類(這些產品類繼承自乙個
父類或介面)的例項。
public inte***ce isender
1.產品一
public class qqsender implements isender
}
2.產品二
public class smssender implements isender
}3.產品三
public class emailsender implements isender
}
1.實現方式一 普通工廠
public class commonfactory1
return sender;}}
2.實現方式二 多個工廠
public class multifactory
public isender produceemail()
public isender produceqq()
}2.實現方式二 靜態工廠
public class staticfactory
public static isender produceemail()
public static isender produceqq()
}
public class factorytest
}@test
public void test2()
@test
public void test3()
}
優:
工廠類是整個模式的關鍵.包含了必要的邏輯判斷,根據外界給定的資訊,
決定究竟應該建立哪個具體類的物件.
缺:違反了高內聚責任分配原則,將全部建立邏輯集中到了乙個工廠類中;
它所能建立的類只能是事先考慮到的,如果需要新增新的類,則就需要改變工廠類了。
Java23種設計模式
定義 設計模式 design pattern 是一套反覆使用 多數人知曉的 經過分類編目的 設計經驗的總結。使用設計模式是為了可重用 讓 更容易被他人理解 保證 可靠性。單例模式,特點 全域性只有乙個例項。定義 單例模式,也叫單子模式,是一種常用的軟體設計模式。在應用這個模式的時候,單例物件的類必須...
Java23種設計模式
建立型模式,共五種 工廠方法模式 抽象工廠模式 單例模式 建造者模式 原型模式。結構型模式,共七種 介面卡模式 裝飾器模式 模式 外觀模式 橋接模式 組合模式 享元模式。行為型模式,共十一種 策略模式 模板方法模式 觀察者模式 迭代子模式 責任鏈模式 命令模式 備忘錄模 式 狀態模式 訪問者模式 中...
Java 23種設計模式
型別 模式建立型工廠模式 抽象工廠模式 單例模式 建造者模式 原型模式 結構型介面卡模式 橋接模式 組合模式 外觀模式 裝飾者模式 享元模式 模式 行為型責任鏈模式 命令模式 直譯器模式 迭代模式 中介者模式 備忘錄模式 觀察者模式 狀態模式 策略模式 模板方法模式 訪問者模式 模式說明 工廠模式 ...