學習筆記 大話設計模式之簡單工廠模式 持續更新

2021-08-22 11:50:06 字數 1673 閱讀 9252

/*

* 簡單工廠模式:建立型模式

* 實現方式是有工廠類根據傳入的引數動態建立某個產品

* 3中角色:

* ----工廠角色:核心,用來例項具體產品物件,被外界(客戶端,主函式)直接呼叫

* ----抽象產品角色:本工廠的所有物件父類,負責所有例項的公共介面

* ----具體產品角色:主要例項目標,所有建立的物件都充當這個角色的具體類的例項

* 優點:

* 1、工廠是核心,它通過外界給的資訊,做相應的邏輯處理建立具體的物件,所以使用者無需考慮物件是如何建立的,利於優化

* 2、通過引入配置檔案和反射,可以在不修改任何客戶端**的情況下更換和增加新的具體產品類,在一定程度上提高了系統的靈活性

* 缺點:

* 1、核心是工廠,工廠出了問題,所有客戶端都會受到牽連

** ***典型應用:jdbc---把關係型資料庫看成抽象產品,具體資料庫(mysql,oracle)看成具體產品,而drivermanager是工廠類

* 使用的使用只需drivermanager的靜態方法得到該資料庫的connection就行了

* */

package dpattern.hc.com;

/* * 簡單工廠模式/靜態工廠模式

* 模擬計算器基本運算(+ - * /)

* */

//抽象產品

class operation

public operation()

public double getnumber1()

public void setnumber1(double number1)

public double getnumber2()

public void setnumber2(double number2)

public double getresult()

}//具體產品

class operationadd extends operation

}class operationsub extends operation

}//工廠

class operationfactory1

return oper;

}}public class ******factory1

}

package dpattern.hc.com;

class phoneshop

public void setprice(double price)

public string gettype()

public void settype(string type)

public phoneshop(double price, string type)

public phoneshop()

public void sellphone()

}class miphone extends phoneshop

}class huaweiphone extends phoneshop

}class operationfactory2

return phone;

}}public class ******factory2

}

大話設計模式 簡單工廠模式 學習筆記

此篇為學習設計模式 簡單工廠模式 教材為 大話設計模式,同時很感謝作者,本書對自己幫助很大。過程中的一些源 筆記和感悟,如有理解不到位或者錯誤之處,敬請指教。簡單工廠模式例項 計算器 設計思想 1.建立乙個運算類 operation 其中有a b以及對a b的賦值屬性 並建立乙個可以返回結果的函式 ...

大話設計模式學習筆記 簡單工廠模式

目錄 抽象運算類 加法實現類 減法實現類 乘法實現類 除法實現類 簡單工廠類 客戶端 運算類 public abstract class operation public void setnumbera double numbera public double getnumberb public v...

大話設計模式學習筆記 簡單工廠 工廠 抽象工廠

主要內容 於書上第15章。我認為,書中以資料庫的設計為例。引言 如果不用設計模式,那麼乙個產品,乙個類,類太多了,就難以管理,這就出現了簡單工廠,對外封裝乙個介面,在裡面用分支判斷處理多種產品建立。第一要知道簡單工廠,利用分支判斷實現多種產品的建立。缺點 增加新的產品時,就需要修改工廠類。這就違反了...