JAVA23種設計模式之工廠模式 一

2021-09-09 06:38:39 字數 1436 閱讀 2560

1. 簡單工廠方法模式:

1.1. 定義:又稱為靜態工廠模式,具體功能為:定義乙個工廠類,來根據對應的條件,動態的建立不同的新的物件。這種模式其實就是相當於乙個選單,客戶只需要知道菜名,並不需要關心對應的菜的做法以及做的具體過程,而知道知道具體菜名,客戶就可以在同乙個選單上點不同的菜,而不用關心其他的。

1.2. 簡單工廠的示意圖如下:

1.3. 簡單工廠示例**如下:

場景:顧客在飯店,通過選單點菜。

食物的抽象類或者抽象介面:

public

inte***ce

food

食物的具體實現類:

麻婆豆腐:

public

class

mapotofu

implements

food

@override

public

void

cook()

@override

public

void

serve()

@override

public

void

order()

}

土豆絲:

public

class

potatosilk

implements

food

@override

public

void

cook()

@override

public

void

serve()

@override

public

void

order()

}

工廠具體類:

public

class

menufactory

return food;

}}

測試主函式:

public

class

main

}

示例中可以了解到,簡單工廠模式是不需要客戶端自己建立物件的,需要建立什麼物件只需要通過工廠來建立,這樣實現了客戶端和物件的解耦。簡單工廠模式的工廠是乙個具體的實現類,並不是介面和抽象類,裡面需要包括乙個建立的方法,該方法一般是靜態的,工廠中還包含一定的判斷的邏輯。

簡單工廠模式也具有一下缺點,在以上示例中,如果飯店需要新增一道菜,就需要修改工廠類和新增菜品的實體類。另外如果不同的菜品的具有特殊化的引數或者方法,簡單工廠模式也不能支援。

Java 23種設計模式之簡單工廠模式

就是建立乙個工廠類,對實現了同一介面的一些類進行例項的建立。簡單工廠模式的實質 是由乙個工廠類根據傳入的引數,動態決定應該建立哪乙個產品類 這些產品類繼承自乙個 父類或介面 的例項。public inte ce isender1.產品一 public class qqsender implement...

Java23種設計模式 工廠模式(二)

工廠模式的作用 1 例項化物件,用工廠方法代替new物件操作 2 選擇實現類,建立物件統一管理和控制,讓呼叫者和現實者解耦 工廠模式分類 1 簡單工廠模式 靜態工廠模式 生產同一等級結構中的任意產品 2 工廠方法模式 生產同一等級結構中的固定產品 3 抽象工廠模式 生產不同品種的產品,可以增加產品族...

Java 23種設計模式之抽象工廠模式詳解

上週發表了工廠模式,接下來給大家講解一下抽象工廠模式。可能很多人對設計模式不以為然,但是我想說的是,乙個不懂設計模式的人,就做不了乙個優秀的架構師,就看不懂優秀的程式設計,看不懂優秀的框架原始碼,根本不懂別人為什麼會那麼設計,為什麼那樣寫,只有你看懂了設計模式,能夠融會貫通的時候,為什麼很多人即使別...