博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Head First 设计模式中的命令模式 的一个错误
阅读量:6225 次
发布时间:2019-06-21

本文共 730 字,大约阅读时间需要 2 分钟。

最近在看Head First 设计模式,其中命令模式中有讲到实现撤销功能,并且作者还出了一道题,

 

下面的是书中习题:

 
public class MarcoCommand implements Command
{
Command[] commands;
 
public MarcoCommand(Command[] commands)
{
this.commands = commands;
}
 
public void execute()
{
for (int i = 0; i < commands.Length; i++)
{
commands[i].execute();
}
}
 
public void undo()
{
//请实现撤销功能。
}
}

 

在看到这里的时候,其实脑子里已经完成了答案了,可是最后看到书后面的答案的时候,却感觉有点奇怪,仔细想想还有点意思.

书中的答案如下:

 
public class MarcoCommand implements Command
{
Command[] commands;
 
public MarcoCommand(Command[] commands)
{
this.commands = commands;
}
 
public void execute()
{
for (int i = 0; i < commands.Length; i++)
{
commands[i].execute();
}
}
 
public void undo()
{
for (int i = 0; i < commands.Length; i++)
{
commands[i].undo();
}
}
}

 

你看出这段代码的问题了吗?

转载地址:http://oxyna.baihongyu.com/

你可能感兴趣的文章
11-3URLTestDemo实例操作完成URL单元测试
查看>>
使用大数据,就像在沙子里淘金
查看>>
敏捷测试理论以及实践(4)
查看>>
Windows 10新版15058推送:RS2准正式、无水印
查看>>
"勒索病毒"推高国内比特币价格 最高已超17000元
查看>>
一个页面标题和过滤输出的解决方案(上)
查看>>
你得小心BYOD这10个陷阱!
查看>>
CRM系统能给企业带来什么样的价值?
查看>>
浙江绍兴将出台《意见》推进光伏发电
查看>>
Java访问控制权限
查看>>
理解 Rack 应用及其中间件
查看>>
《Hadoop与大数据挖掘》一2.2.4 动手实践:一键式Hadoop集群启动关闭
查看>>
《大数据云计算时代 数据中心经典案例赏析》——导读
查看>>
IBM 拉开裁员大幕 或波及上万员工
查看>>
天猫618再砸数亿 ,家电不论大小只要比京东贵就赔
查看>>
《实施Cisco统一通信管理器(CIPT1)》——导读
查看>>
Google:我们用一条公式成功增强了 Android 的安全性
查看>>
《CCNP SWITCH 300-115认证考试指南》——1.6节定义关键术语
查看>>
《编写高质量代码:改善c程序代码的125个建议》——建议3-4:避免直接在浮点数中使用“==”操作符做相等判断...
查看>>
《软件开发践行录——ThoughtWorks中国区文集》一一2.1 项目背景
查看>>