策略模式

策略模式记住一句话: 使用统一的接口,根据不同的参数产生不同的表现

引用我上一篇的工厂,策略模式简单的如下实现就可以了

DBContext.java

package strategyfactory;

import db.DataBase;

public class DBContext {
    private DBContext() {}

    public static void connect(DataBase db) {
        System.out.println("Using " + db.getClass().getName());
        db.connect();
    }
}

Client

package strategyfactory;

import abstractfactory.ABFactory;
import db.DataBase;

public class Test {
    public static void main(String[] args) {
        DataBase db = ABFactory.createDB(DataBase.MYSQL_CLASSNAME);
        DBContext.connect(db);
    }
}

 

 

原文地址:https://www.cnblogs.com/zemliu/p/2750584.html