設計模式 合同PDF生成 模板設計模式

2021-10-08 23:53:59 字數 940 閱讀 5411

場景

但其中因為事業部不同,需要填充的引數肯定也不同,而且中間可能會有附加操作。也就是說除了這個需求流程絕對不變,其他中間**可能會不一樣。那這時候,模板設計模式就上場了。

模板設計模式

我理解的模板設計模式其實很簡單,就是乙個abstract類包含了公用函式,具體類去實現這個抽象類,override抽象類中的方法就行了,大概實現如下:

abstract類

public

abstract

class

abstractcontractcreateaction

}protected

abstract

void

choosecontract

(int contracttype)

public string execute

(requestinfo requestinfo)

繼承abstract類

public

class

lawcontractcreateaction

extends

abstractcontractcreateaction

@override

protected

abstract

void

choosecontract

(int contracttype)

//....blablabla}}

}

這樣就大大減少了**的重複性,關鍵是idea就不會有那麼多的黃色波浪線了(原先是寫好乙個事業部後直接複製檔案,再改其中某些函式,這實在有點傻)。並且以後如果流程變了,就只用改abstract類就可以了。

設計模式 模板設計模式

1 抽象類 abstractclass類中實現了模板方法 template 定義了演算法的骨架,具體子類需要去實現,抽象方法operationr2,3,4 template operationr2,3,4可以是抽象方法,也可以是實現方法 如果是抽象方法,需要到子類實現即可 2 實現類 concret...

設計模式 模板設計

針對系統設計前期,不可能知道每個業務的具體實現,但是總體是知道某些業務之間的邏輯。所以我們可以在抽象類裡面定義好 抽象業務 的抽象方法,利用繼承的多型,讓子類實現父類,繼承抽象方法。1.抽象類package com.github.noodzhan.pattern.template author no...

模板設計模式 設計模式 模板方法模式

在模板模式 template pattern 中,乙個抽象類公開定義了執行它的方法的方式 模板。它的子類可以按需要重寫方法實現,但呼叫將以抽象類中定義的方式進行。這種型別的設計模式屬於行為型模式。首先需要一定抽象的定義,沒有具體的實現,但是在抽象類的行為中,子類去程序這個抽象類,重寫抽象方法,實現不...