簡單工廠模式適用於某大類的產品或物件其下可分為多種子型別的物件,每種子型別在大類的基礎上又有各自特色的行為或方法。使用者在使用時不需要知道具體的物件是怎麼產生的,不關心物件的生成過程,只需要根據使用者需求提供對應的物件就可以,這時我們就可以使用乙個統一的工廠來封裝物件的生成過程,將物件的生產和使用解耦開來,這樣也利於後續的維護。
如圖形(shape)大類,其下又可分為長方形(rectangle),正方形(square),圓形(circle)等多種子類。對於圖形大類來說,擁有draw()方法來進行畫圖,但是對於每個子圖形來說,各自的draw()又是不同的。同時我們需要圖形的統一生產工廠,也就是shapefactory,根據不同的需求生產相應的產品。以下為簡單工程模式的具體**:
shape介面
package com.factorypattern;
public inte***ce shape
shape具體的實現類:
package com.factorypattern;
public class rectangle implements shape
}
package com.factorypattern;
public class square implements shape
}
package com.factorypattern;
public class circle implements shape
}
然後需要生產圖形的工廠:
package com.factorypattern;
public class shapefactory
else if (type.equals("square"))
else if (type.equals("circle"))
}return shape; }
}
測試類:
package com.factorypattern;
public class factorypatterndemo
}
以上只是最簡單的工廠模式的示例**,用來讓大家對工廠模式有乙個大概的了解,具體的應用和優化還需要在實際應用中不斷地學習和改進,力求達到當前工作應用場景下的最佳狀態。
工廠模式 簡單工廠
簡單工廠其實並不是乙個設計模式,反而比較像一種程式設計習慣。我個人的這樣總結簡單工廠 建立乙個類,封裝建立物件的 故事 現在我要開一家披薩店,叫bbk 必敗客 披薩,賣很多種披薩 芝士披薩 榴蓮披薩等等,我有乙個orderpizza string type 方法,根據客戶傳來的type來提供不同的披...
工廠模式 簡單工廠
工廠 處理建立物件的細節。目的 將例項化具體類的 從應用中抽離,或者封裝起來,可以避免干擾應用的其他部分。簡單工廠 簡單工廠其實不是乙個設計模式,反而像一種程式設計習慣。產品實現 desc 產品a public inte ce a class a1 implements a override pub...
簡單工廠模式,工廠模式,抽象工廠模式
三種模式看了一天,記錄下自己的理解 headfirst,比薩店為例 1,簡單工廠模式 乙個具體的工廠類 pizzafactory 乙個抽象的產品類pizza,可以派生出多個具體的產品類 客戶 pizzastore類 工廠類 pizzafactory類關聯產品類pizza,工廠生產出不同型別的pizz...