設計模式一 簡單工廠

2021-08-16 10:53:03 字數 1243 閱讀 1721

簡單工廠模式是屬於建立型模式,又叫做靜態工廠方法(static factory method)模式,但不屬於23種gof設計模式之一。簡單工廠模式是由乙個工廠物件決定建立出哪一種產品類的例項。簡單工廠模式是工廠模式家族中最簡單實用的模式,可以理解為是不同工廠模式的乙個特殊實現。

1。類圖

實現方式

簡單工廠模式的實質是由乙個工廠類根據傳入的引數,動態決定應該建立哪乙個產品類(這些產品類繼承自乙個父類或介面)的例項。

該模式中包含的角色及其職責

工廠(creator

)角色簡單工廠模式的核心,它負責實現建立所有例項的內部邏輯。工廠類的建立產品類的方法可以被外界直接呼叫,建立所需的產品物件。

抽象產品(

product

)角色簡單工廠模式所建立的所有物件的父類,它負責描述所有例項所共有的公共介面。

具體產品(

concrete product

)角色是簡單工廠模式的建立目標,所有建立的物件都是充當這個角色的某個具體類的例項。

介面類animal

package com.lx.******factory;

public inte***ce animal

實現類cat

package com.lx.******factory;

public class cat implements animal

}

實現類dog

package com.lx.******factory;

public class dog implements animal

}

簡單工廠類animalfactory

package com.lx.******factory;

public class animalfactory else if(noises.equals("wang"))

return animal;

}}

測試類

package com.lx.******factory;

import org.junit.test;

public class testsf

}

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

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

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

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

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

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