模板方法模式

实验 24:模板方法模式

本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:

1、理解模板方法模式的动机,掌握该模式的结构;

2、能够利用模板方法模式解决实际问题。

 

[实验任务一]:数据库连接

对数据库的操作一般包括连接、打开、使用、关闭等步骤,在数据库操作模板类中我们定义了connDB()、openDB()、useDB()、closeDB()四个方法分别对应这四个步骤。对于不同类型的数据库(如SQL Server和Oracle),其操作步骤都一致,只是连接数据库connDB()方法不同,现使用模板方法模式对其进行设计。

实验要求:

1. 画出对应的类图;

 

2. 提交源代码;

// 抽象类,提供模板方法和抽象方法  

abstract class Database {  

    

    // 模板方法  

    public final void connDB() {  

        System.out.println("连接到数据库...");  

        connect();  

    }  

 

    // 其他步骤的具体实现  

    public void openDB() {  

        System.out.println("打开数据库...");  

    }  

 

    public void useDB() {  

        System.out.println("使用数据库...");  

    }  

 

    public void closeDB() {  

        System.out.println("关闭数据库...");  

    }  

 

    // 抽象方法,由子类实现  

    protected abstract void connect();  

}  

 

// SQL Server 数据库实现  

class SQLServerDatabase extends Database {  

    

    @Override  

    protected void connect() {  

        System.out.println("连接到 SQL Server 数据库。");  

    }  

}  

 

// Oracle 数据库实现  

class OracleDatabase extends Database {  

    

    @Override  

    protected void connect() {  

        System.out.println("连接到 Oracle 数据库。");  

    }  

}  

 

// 主方法进行测试  

public class Main {  

    public static void main(String[] args) {  

        Database sqlServer = new SQLServerDatabase();  

        Database oracle = new OracleDatabase();  

 

        // 使用 SQL Server 数据库  

        sqlServer.connDB();  

        sqlServer.openDB();  

        sqlServer.useDB();  

        sqlServer.closeDB();  

 

        System.out.println(); // 分隔输出  

 

        // 使用 Oracle 数据库  

        oracle.connDB();  

        oracle.openDB();  

        oracle.useDB();  

        oracle.closeDB();  

    }  

}

3. 注意编程规范。

 

 

posted @   chrisrmas、  阅读(2)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示