設計模式 簡單工廠

2021-07-14 06:44:18 字數 996 閱讀 1502

簡單工廠模式,又叫靜態工廠方法模式,它定義乙個具體的工廠類負責建立一些類的例項。

優點:客戶端不需要在負責物件的建立,從而明確了各個類的職責。

缺點:這個靜態工廠類負責所有物件的建立,如果有新的物件增加,或者某些物件的建立方式不同,就需要不斷的修改工廠類,不利於後期的維護。

**實現。

生產物件的工廠類:

因為是簡單工廠,所以工廠類很簡單,沒有將工廠類設定成抽象類。

工廠類不是抽象的,給我們帶來的乙個麻煩是,如果要擴充套件的話,就得不斷地修改這個 animalfactory 類,這就違反了「對增加開放,對修改關閉」的原則。

public

class animalfactory else

if("cat".equals(type))else

}}

我們要的物件,是乙個抽象類。正是因為有了抽象,才會更加靈活。

public

abstract

class animal

下面是兩個具體的類的物件,都屬於 animal 這個類的物件,但是表現出不同的特徵。

public

class

catextends

animal

}

public

class

dogextends

animal

}

測試類:

public

class animaldemo else

animal = animalfactory.createanimal("cat");

if(animal!=null)else

animal = animalfactory.createanimal("pig");

if(animal!=null)else

}}

設計模式 工廠模式(簡單工廠)

一 簡單工廠 定義 簡單工廠模式 factory pattern 屬於類的創新型模式,又叫靜態工廠方法模式 static factorymethod pattern 是通過專門定義乙個類來負責建立其他類的例項,被建立的例項通常都具有共同的父類。特點 工廠類直接實現,乙個產品介面,乙個工廠類可以產生多...

簡單工廠設計模式與工廠設計模式

工廠設計模式的目的 降低呼叫者和實現者之間的耦合度。當需求發生變化 增加或改變 時,不改變原有 的結構。1.簡單工廠設計模式 優點 降低了呼叫者和實現者之間的耦合度。當引入乙個新的實現型別時,只需要增加乙個實現類,然後修改工廠類即可。缺點 只適用於層次結構較為簡單的情況。如果可能的實現型別很多,工廠...

設計模式 簡單工廠設計模式

請用任意一種物件導向語言實現計算器控制台程式,要求輸入兩個數和運算符號,得到結果。operation運算類 public class operation set public double numberb set public virtual double getresult 加減乘除類 using...