模板方法设计模式
1.说明
核心是:定义一个模板类,在模板类中规定其整体的骨架并确定哪些方法是允许子类可以去重写的,哪些是不允许子类去重写的.用来保证核心算法不被破坏.
2.修饰词说明
修饰词 | 使用位置 | 说明 |
---|---|---|
final | 修饰方法 | 定义那些不想被子类重写的方法,常见于定义整体的数据流转结构 |
abstract | 修饰方法 | 定义那些需要子类去具体实现的方法 |
3.代码范例
模板类(抽象类)
@Component
public abstract class AbstractResGroupManageService implements ResGroupManageService {
/**
* 不允许子类去重写的,必须要用父类提供的功能逻辑
**/
public final void saveOrUpdateResGroupAndRules(AlarmDescDetailsDto request) {
saveOrUpdateResGroup(request);
saveOrUpdateAlarmRules(request);
saveOrUpdateAppInfoRelation(request);
saveOrUpdateMemberRelation(request);
saveInstanceCount(request);
}
/**
* 必须子类去实现的,父类不提供功能
**/
abstract void saveOrUpdateResGroup(AlarmDescDetailsDto request);
abstract void saveInstanceCount(AlarmDescDetailsDto request);\
abstract void saveOrUpdateAppInfoRelation(AlarmDescDetailsDto request);
abstract void saveOrUpdateMemberRelation(AlarmDescDetailsDto request);
}
4.扩展
使用到了抽象类abstractClass,刚好说明在使用模板方法的设计模式时时候抽象类,而不使用接口
5.优势,好处
用到了编程中的抽象的思想,去设计好整体的骨架.这是核心
标签:AlarmDescDetailsDto,子类,abstract,request,设计模式,方法,void,模板 From: https://www.cnblogs.com/PythonOrg/p/17068693.html