一 簡單工廠模式

2021-07-11 10:11:14 字數 1087 閱讀 6325

定義:又叫做靜態工廠方法模式,通過定義專門乙個類來負責建立

其他類的例項,而被建立的其他類例項一般具有共同的父類。

角色:分別為:工廠角色、抽象角色和具體例項角色。

通過對每個類例項的抽象,抽象出共同的父類(通常以介面的形式建立),作為抽象角色。然後再工廠角色中,根據傳遞的引數,建立具體類例項。

下面以具體的**進行講解:

首先來看下具體類:

例如:

public

class

public

void

get()

}public

class

banana

}

上面定義了兩個具體類分為蘋果類和香蕉類。可以看到他們都有get方法,因此可以定義乙個水果介面類,作為抽象角色。

類如:

public

inte***ce fruit

下面修改下上面的具體類,使他們實現該抽象介面。

public

class

implements

fruit

}public

class

banana

implements

fruit

}

現在已經有了抽象角色和具體例項角色,還差工廠角色。那該如何建立工廠角色呢。請看下面的**:

public

class fruitfactory else

if(type.equalsignorecase(

"banana")) else

}}

那麼,該如何呼叫呢,請看**:

public

class test

}

上面介紹了簡單工廠模式。但是工廠角色中建立例項的**比較繁瑣,我們可以更改為更為簡單的方式,如下:

public

class fruitfactory

}

上面的**雖然簡潔,但是要注意呼叫的時候,引數要與具體類名一致。

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

工廠設計模式實現了建立者和呼叫者的分離。類別 1.簡單工廠模式 2.工廠方法模式 3.抽象工廠模式 遵循的設計原則 1.ocp 開閉原則,open closed principle 乙個軟體的實體應當那個對擴充套件開放,對修改關閉 2.dip 依賴倒置原則,dependence inversion ...

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

工廠設計模式可分為 簡單工廠模式 工廠方法模式 抽象工廠模式 第一篇我們來聊聊 理解 假設某些例項具有相同的方法,可以根據引數的不同返回不同的例項,被建立的例項通常都具有共同的父類,那麼可以考慮使用簡單設計模式來實現。例如可以實用簡單工廠模式設計乙個可以建立不同幾何形狀 如圓形 方形和三角形等 的繪...

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

以前總覺得設計模式純屬扯淡,浪費精力,10 能搞定的事情非要寫那麼多的介面或者實現類.為什麼要用設計模式,開發有乙個重要的原則 對修改關閉,對擴充套件開放.因為如果把 全部都雜糅到乙個類中,第一 復用性太差,擴充套件性不強.第二,修改起來一改巨改,改動即意味著要增加測試人員工作量,且引入修改bug如...