博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《敏捷软件开发》学习笔记 第17章 空对象模式
阅读量:6300 次
发布时间:2019-06-22

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

 

如果一个引用类型对象是空值,有时候就会报错。所以经常要在判断后面加 && xxx==null这样很麻烦。那是不是有简单的方法呢?

 

17章所讲的空对象模式,不适合所有情况。但在部分情况下确实值得一用。

我这里用C#代码演示一下空对象模式

public class NullPlayer : IPlayer{    #region IPlayer Member    public bool Move    {        return false;    }    public bool Jump    {        return false;    }    #endregion}
NullPlayer class

use:

private static readonly IPlayer NullPlayer = new NullPlayer();private Iplayer mPlayer = NullPlayer;.........if(KeyPress("Space")){    if(mPlayer.Jump())    {        //Do something    }}

 

 

配合敏捷开发上一章例子中用的状态机,效果会很不错

转载于:https://www.cnblogs.com/hont/archive/2013/06/09/3128159.html

你可能感兴趣的文章
机智云开源框架初始化顺序
查看>>
Spark修炼之道(进阶篇)——Spark入门到精通:第五节 Spark编程模型(二)
查看>>
一线架构师实践指南:云时代下双活零切换的七大关键点
查看>>
ART世界探险(19) - 优化编译器的编译流程
查看>>
玩转Edas应用部署
查看>>
music-音符与常用记号
查看>>
sql操作命令
查看>>
zip 数据压缩
查看>>
Python爬虫学习系列教程
查看>>
【数据库优化专题】MySQL视图优化(二)
查看>>
【转载】每个程序员都应该学习使用Python或Ruby
查看>>
PHP高级编程之守护进程,实现优雅重启
查看>>
PHP字符编码转换类3
查看>>
rsync同步服务配置手记
查看>>
http缓存知识
查看>>
Go 时间交并集小工具
查看>>
iOS 多线程总结
查看>>
webpack是如何实现前端模块化的
查看>>
TCP的三次握手四次挥手
查看>>
关于redis的几件小事(六)redis的持久化
查看>>