-
工廠模式
該模式實現(xiàn)了創(chuàng)建者和調用者的分離,它的核心思想是在實例化對象時,用工廠的方法代替new操作,將選擇實現(xiàn)類、創(chuàng)建對象統(tǒng)一管理和控制,從而將調用者跟我們的實現(xiàn)類進行解耦。該模式有三個分類:簡單工廠模式,工廠方法模式,抽象工廠模式。
今天主要學習的就是簡單工廠模式(該分類在工廠模式中屬于最簡單類型,所以在這不做詳細的代碼展示)。
-
簡單工廠模式
用來生產同一等級結構中的任意產品。(對于增加新的產品,需要修改已有代碼)
類關系圖:

image.png
簡單工廠類:
public class SimpleCarFactory {
public static Car createCar(String type) {
if ("Audi" == type) {
return new Audi();
} else if ("Byd" == type) {
return new Byd();
}
return null;
}
}
簡單工廠模式也叫靜態(tài)工廠模式,就是工廠類一般是使用靜態(tài)方法。通過接收的參數(shù)不同來返回不同的對象實例。一個很大的缺點就是,對于新增加產品無能為力(不修改代碼的話,是無法擴展的),違法了開閉原則。