模板方法模式
实验 24:模板方法模式
本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:
1、理解模板方法模式的动机,掌握该模式的结构;
2、能够利用模板方法模式解决实际问题。
[实验任务一]:数据库连接
对数据库的操作一般包括连接、打开、使用、关闭等步骤,在数据库操作模板类中我们定义了connDB()、openDB()、useDB()、closeDB()四个方法分别对应这四个步骤。对于不同类型的数据库(如SQL Server和Oracle),其操作步骤都一致,只是连接数据库connDB()方法不同,现使用模板方法模式对其进行设计。
类图
源代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | public abstract class DBOperator { public abstract void connDB(); public void openDB() { System.out.println( "打开数据库" ); } public void useDB() { System.out.println( "使用数据库" ); } public void closeDB() { System.out.println( "关闭数据库" ); } public void process() { this .connDB(); this .openDB(); this .useDB(); this .closeDB(); } } public class OracleDBOperator extends DBOperator{ @Override public void connDB() { // TODO Auto-generated method stub System.out.println( "连接Oracle数据库" ); } } public class SQLServerDBOperator extends DBOperator{ @Override public void connDB() { // TODO Auto-generated method stub System.out.println( "连接SQLServer数据库" ); } } public class Client { public static void main(String[] args) { // TODO Auto-generated method stub DBOperator db; db= new OracleDBOperator(); db.process(); System.out.println( "-----------------" ); db= new SQLServerDBOperator(); db.process(); } } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端