Java學習之 模板設計模式

2021-09-12 14:27:32 字數 984 閱讀 3353

主要採用抽象類實現,遵循開閉原則,對修改關閉,對擴充套件開放。
比如飲品製作,都必須要遵循一套大致相同的流程:

1.燒水

2.沖泡主料

3.加配料

4.倒入杯子

雖然大致流程相同,但是主料的選擇、配料的選擇都有所不同。

所以將這套流程採用抽象類中的抽象方法寫出來。

然後在具體製作時,根據流程指南完成具體製作。

public

abstract

class

drinkproduction

//定義流程

void

boilwater()

abstract

void

brew()

;abstract

void

addcondiments()

;void

pourintoglass()

}

//製作茶水

class

producttea

extends

drinkproduction

@override

void

addcondiments()

}//製作咖啡

class

productcoffee

extends

drinkproduction

@override

void

addcondiments()

}

*測試類

public

class

templatedesignpattern

}

1.有父類模板類的存在,可以控制流程讓子類嚴格執行

2.最大程度的實現**復用

JAVA 設計模式之模板模式

模板模式 提供通用模板,高度抽象將通用演算法封裝,暴露子類物件特有演算法重寫。簡述直接上demo 通用模板類 package com.coamc.android.api.template version v 2.0.0 title bankte package com.coamc.android.a...

java設計模式之模板模式

模板模式是類的行為模式。準備乙個抽象類,將部分邏輯以具體方法以及具體建構函式的形式實現,然後宣告一些抽象方法來迫使子類實現剩餘的邏輯。不同的子類可以以不同的方式實現這些抽象方法,從而對剩餘的邏輯有不同的實現。這就是模板方法模式的用意。比如定義乙個操作中的演算法的骨架,將步驟延遲到子類中。模板方法使得...

Java設計模式之模板模式

從名字上看模板模式與元型模式有點像,但實際上它們有很大的不同。元型模式是建立系列中的模式,它的實現是先為類建立乙個例項,然後對這個例項進行初化,並當成是元型。以後再需要這個類的例項時,不再是從頭開始new,而是從已有的元型clone。當然,元型可能不只乙個,這個時候就要用集合類進行管理了,在clon...