首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
对数据库的操作一般包括连接、打开、使用、关闭等步骤,对于不同
[单选题]
对数据库的操作一般包括连接、打开、使用、关闭等步骤,对于不同类型的数据库,其操作步骤都一致,只是连接数据库方法有所区别,可以使用()对其进行设计
工厂方法模式
访问者模式
模板方法模式
责任链
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(70)
分享
2个回答
添加回答
3
牛客813920882号
模板方法模式的定义
定义一个操作中的算法的框架,而将一些步骤延迟到子类中. 使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤.
通俗的讲,就是将子类相同的方法, 都放到其抽象父类中
模板方法模式的优点
封装不可变部分,扩展可变部分. 把认为是不变部分的算法封装到父类实现,而可变部分的则可以通过继承来继续扩展
提取公共部分代码,便于维护. 试想, 如果我们不抽取到父类,维护人员为了修正一个缺陷,需要到处查找类似的代码
行为有父类控制,子类实现. 基本方法是由子类实现的, 因此子类可以通过扩展的方式增加相应的功能, 符合开闭原则
模板方法模式的缺点
按照我们的设计习惯, 抽象类负责声明最抽象,最一般的食物属性和方法, 实现类完成具体的事物属性和方法. 但是模板方法模式却颠倒了, 抽象类定义了部分抽象方法, 由子类实现, 子类执行的结果影响了父类的结果, 也就是子类对父类产生了影响, 这在复杂的项目中,会带来代码阅读的难度, 而且也会让新手产生不适感
模板方法模式的使用场景
多个子类有公有的方法,并且逻辑基本相同
重要、复杂的算法, 可以把核心算法设计成模板方法, 周边的相关细节功能则由各个子类实现
重构时, 模板方法模式是一个经常使用的模式, 把相同的代码抽取到父类中,然后通过钩子函数约束其行为
发表于 2022-05-06 11:12:47
回复(0)
0
大胆的西红柿不讲武德
重点是操作步骤都一致
发表于 2024-06-18 10:34:10
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
设计模式
上传者:
小小
难度:
2条回答
70收藏
1763浏览
热门推荐
相关试题
对象间存在一对多关系,当一个对象被...
京东
安卓工程师
2019
设计模式
评论
(3)
在大语言模型中,什么是"Gated...
大模型开发
评论
(1)
下面关于 Java 中的异常处理说...
Java
评论
(1)
关于大模型“上下文窗口”的理解,以...
大模型概念
评论
(1)
Vue Router的全局前置守卫...
Vue
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题