- 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
- 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
- 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
查看更多
1 设计模式入门
欢迎来到
设计模式世界
我们已经搬到对象村,刚刚开始着
手设计模式……这里每个人都在
使用设计模式。很快我们就会通
过设计模式跻身上流社会。
有些人已经解决你的问题了。在本章,你将学到为何(以及如何)
利用其他开发人员的经验与智慧。他们遭遇过相同的问题,也顺利地解决过这些
问题。本章结束前,我们会看看设计模式的用途与优点,再看一些关键的OO设计
原则,并通过一个实例来了解模式是如何运作。使用模式最好的方式是:“把模
式装进脑子里,然后在你的设计和已有的应用中,寻找何处可以使用它们。”以
往是代码复用,现在是经验复用。
这是新的一章
模拟鸭子
先从简单的模拟鸭子应用做起
Joe上班的公司做了一套相当成功的模拟鸭子游戏:
SimUDuck。游戏中会出现各种鸭子,一边游泳戏水,一边呱
呱叫。此系统的内部设计使用了标准的OO技术,设计了一个鸭
子超类(Superclass),并让各种鸭子继承此超类。
所有的鸭子都会呱呱 Duck
叫(Quack)也会游泳
quack()
(Swim),所以由超类
负责处理这部分的实 swim() 因为每一种鸭子的
现代码。 display() 外观都不同,所以
// 鸭子的其他方法 display()方法是抽象的。
子子类 继承
每个鸭btype)负 MallardDuck RedheadDuck 多其他类型的鸭子
型(su 自己的 display() { display() { 许 k类。
责实现() 行为在 // 外观是绿头 } // 外观是红头 } Duc
display显示其外
屏幕上
观。
去年,公司的竞争压力加剧。在为期一周的高尔夫假期兼头脑风
暴会议之后,公司主管认为该是创新的时候了,他们需要在“下
周”毛伊岛股东会议上展示一些“真正”让人印象深刻的东西来振
奋人心。
第1章
设计模式入门
现在我们得让鸭子能飞
主管们确定,此模拟程序需要会飞的鸭子来将竞争者抛在
后头。当然,在这个时候,Joe的经理拍胸脯告诉主管们,
Joe只需要一个星期就可以搞定。“毕竟,Joe是一个OO程序
我只需要在Duck类中加上
员……这有什么困难?”
fly()方法,然后所有鸭子都会继承
fly()。这是我大显身手,展示OO才
您可能关注的文档
- 《今日全球商务》【精品】.pdf
- 《世界散文随笔精品》东欧卷桔黄色旅行中的奇妙瞬间【精品】.pdf
- 《数字电子技术基础》(阎石)第五版_课后答案(完【精品】.pdf
- 《微观经济学原理》第六版中文版 - 曼昆【精品】.pdf
- 《现代精神与儒家传统》【杜维明 三联书店】【精品】.pdf
- 【当代世界学术名着】博弈学习理论【[美]朱·弗登伯格 等】【精品】.pdf
- 【关于书画的书】中国现代十大名画家画集 张大千【精品】.pdf
- 【关于书画的书】中国现代十大名画家画集++潘天寿【精品】.pdf
- 【关于书画的书】中国现代十大名画家画集++齐白石【精品】.pdf
- 【关于书画的书】中国现代十大名画家画集++徐悲鸿【精品】.pdf
文档评论(0)