什么是命令模式?
命令模式就是 通过一条命令 来调用很多功能 就比如 cmd命令 比如 linux命令
在软件系统中 通常 用户的一次请求 后台需要执行 日志记录 数据处理 数据监测… 所以就需要我们将这些功能都封装起来 一起执行
想要实现命令模式 就需要有相同的接口 和一个启动方法 然后我们通过命令类收集功能和执行
下面案例 中我们将封装一个命令
接口
public interface Order {
void execute();
}
命令类
public class Broker {
private List<Order> orderList = new ArrayList<Order>();
public void takeOrder(Order order){
orderList.add(order);
}
public void placeOrders(){
for (Order order : orderList) {
order.execute();
}
orderList.clear();
}
}
接口实现类
public class BuyStock implements Order {
public void buy(){
System.out.println("Stock BuyStock");
}
public void execute() {
this.buy();
}
}
接口实现类
public class SellStock implements Order {
public void sell(){
System.out.println("Stock SellStock");
}
public void execute() {
this.sell();
}
}
测试
public class CommandPatternDemo {
public static void main(String[] args) {
Broker broker = new Broker();
broker.takeOrder(new BuyStock());
broker.takeOrder(new SellStock());
// 通过一条命令 来运行 多个对象中的方法
broker.placeOrders();
}
}
Stock BuyStock
Stock SellStock
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/weixin_45203607/article/details/120238581
内容来源于网络,如有侵权,请联系作者删除!