10-命令模式(Command)
定义:
将"请求"封装成对象,以便使用不同的请求
命令模式解决了应用程序中对象的职责以及它们之间的通信方式(即命令者和执行者完全解耦)
适用场景
请求调用者和请求接收者需要解耦,使得调用者和接收者不直接交互
需要抽象出等待执行的行为
优点
降低耦合
容易扩展新命令或者一组命令
缺点:
命令的无限扩展会增加类的数量,提高系统实现复杂度
示例DEMO&UML:
源码链接:https://github.com/NoSuchClass/design_pattern/tree/master/src/behavioral/command
In JDK
与线程相关的Runnable接口: