行为型模式:23-模板方法模式

2021-06-26  本文已影响0人  综合楼

模板方法模式:定义一个操作中算法的框架,而将一些步骤延迟到子类中。模板方法模
式使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。

image.png

模板方法模式包含如下两个角色:

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() {
        connDB();
        openDB();
        useDB();
        closeDB();
    }
}
-----------------------------------------------------------------------------------
class DBOperatorSubA extends DBOperator {
    public void connDB() {
        System.out.println("使用JDBC-ODBC桥接连接数据库");
    }
}
-----------------------------------------------------------------------------------
class DBOperatorSubB extends DBOperator {
    public void connDB() {
        System.out.println("使用连接池连接数据库");
    }
}
-----------------------------------------------------------------------------------
class Client {
    public static void main(String a[]) {
        DBOperator db1;

        db1 = new DBOperatorSubA();
        db1.process();
        System.out.println("---------------------------------------");
        db1 = new DBOperatorSubB();
        db1.process();
    }
}

image.png
上一篇下一篇

猜你喜欢

热点阅读