定义
单例模式:确保一个类只有一个实例,并提供一个全局访问点
设计要点
- 类的构造方法是私有的
理解
joe:命令模式可将“动作的请求者”从“动作的执行者”对象中解耦。在你们的
子中,请求者可以是遥控器,而执行者对象就是厂商类其中之一的实例
Sue:这怎么可能?怎么能将它们解耦?毕竞,当我按下按钮时,遥控器必须把电灯
对器打开。
Joe:在你的设计中采用“命令对象”就可以办到。利用命令对象,把请求(例如打开电灯)封装成一个特定对象(例如客厅电灯对象)。所以,如果对每个按钮都存储一个命令对象,那么当按钮被按下的时候,就可以请命令对象做相关的工作。遥控器并不需要知道工作内容是什么,只要有个命令对象能和正确的对象沟通,把事情做好就可以了。所以,看吧,遥控器和电灯对象解耦了。
Mary:听听我的想法是否正确:使用这个模式,我们能够创建一个AP1,将这些命令对象加载到按钮插槽,让遥控器的代码尽量保持简单。而把家电自动化的工作和进行该工作的对象一起封装在命令对象中。