設計模式之簡單工廠模式(創建型)
阿新 • • 發佈:2018-05-20
== 邏輯 設計 技術分享 對象創建 代碼 extends 工廠類 font
定義
簡單工廠模式又稱靜態工廠模式。可以根據參數的不同返回不同類的實例。定義一個類來創建其它類的實例。
角色
簡單工廠模式包含如下角色
Factory:工廠角色
Product:抽象產品角色
ConcreteProduct:具體產品角色
簡單實例
public abstract class Produce{
public abstract void m1()‘‘
}
public class ConcreteProduct extends Produce{
public void m1(){}
}
public class Factory{ public static Produce methodA(){ return new ConcreteProduct();//創建具體產品 }; }
場景應用
簡單工廠模式在jdk有不少應用,比如
java.text.DateFormat
public final static DateFormat getDateInstance();
public final static DateFormat getDateInstance(int style);
public final static DateFormat getDateInstance(int style,Locale
locale);
簡單工廠模式適用場景:
工廠類負責創建的對象比較少;客戶端只知道傳入工廠類的參數,對象創建過程不會影響客戶端代碼
優缺點
優點:簡單工廠模式將對象創建和本身業務處理分開,降低了耦合
缺點:工廠類集中了所有產品創建邏輯,一旦新增產品就得修改工廠類
設計模式之簡單工廠模式(創建型)