一 簡單工廠模式:就是建立乙個工廠類,對實現了同一介面【或者繼承同一類】的一些類進行例項的建立。【獲取例項的方法返回值為介面或父類物件 用到多型父類引用指向子類 物件】 【乙個模式使用了封裝繼承和多型】
共同的實現介面:【帶有傳送方法的傳送器介面】
public inte***ce sender
//傳送郵箱的類
public class mailsender implements sender
} //傳送簡訊的類
public class smssender implements sender
} 如果實現該傳送器類多了不好創造每個子類例項,,就需要用到簡單工廠模式
單方法工廠類:獲取例項方法輸入標記 使用if或者switch區分標記分別創造例項返回。
這樣好處:寫乙個方法,壞處:輸入錯了type不能返回例項
解決:使用多方法工廠模式
public class sendfactory else if ("sms".equals(type)) else
} }
多方法工廠類:【單方法工廠類的改進】 多個方法分別獲取例項
public class sendfactory {
public sender producemail(){
return new mailsender();
public sender producesms(){
return new smssender();
靜態方法工廠類:【多方法工廠類的改進】將上面的多個工廠方法模式裡的方法置為靜態的,不需要建立例項,直接呼叫即可。
public class sendfactory {
public static sender producemail(){
return new mailsender();
public static sender producesms(){
return new smssender();
簡單工廠模式 java設計模式(二)
結構和實現 例項簡單工廠簡化 優缺點和適用環境 jdk中的應用 抽象產品 工廠類建立的物件的父類,封裝了各種產品的共有方法。具體產品 工廠類建立的物件。結構。靜態工廠方法。public class factory else if arg.equalsignorecase b return produ...
java設計模式 簡單工廠模式
大話設計模式 第一章 package ch01 public abstract class operation public void setnumbera double numbera public double getnumberb public void setnumberb double n...
java設計模式 簡單工廠模式
簡單工廠模式 所謂的工廠模式就是用乙個類專門來建立物件,建立的類有共同的父類。簡單工廠模式的實質是建立乙個工廠類的方法,通過其引數傳入要建立的類。然後將其建立出來。在簡單工廠模式中,工廠類是整個模式的關鍵,其包含必要的判斷邏輯,能夠根據外界給定的資訊,決定究竟建立哪個類的例項,外界可以不用去關注物件...