Command模式规定了一个对象,该对象在创建后就可以不带任何参数地执行(例如:Runnable或Callable),但是,没有什么可以阻止在创建过程中传递参数的。因此您只需将
msg参数从
execute()方法移至命令的构造函数即可。
在“命令”模式的典型用法中,命令是在一个位置创建并在另一位置执行。创建逻辑已参数化;执行逻辑不是。

Command模式规定了一个对象,该对象在创建后就可以不带任何参数地执行(例如:Runnable或Callable),但是,没有什么可以阻止在创建过程中传递参数的。因此您只需将
msg参数从
execute()方法移至命令的构造函数即可。
在“命令”模式的典型用法中,命令是在一个位置创建并在另一位置执行。创建逻辑已参数化;执行逻辑不是。