- 3
- 0
- 约1.79千字
- 约 68页
- 2018-11-04 发布于广西
- 举报
模拟鸭子游戏SimUDuck: 各种鸭子 一边游泳戏水,一边呱呱叫 现在,让鸭子飞起来 It’s easy. 这时,问题出现了 简单的使用继承,结局并不完美。 继承如何解决上述问题呢? 但是 在继承的同时,可以使用接口 现在的设计怎么样呢? 重复的代码会变多 会随着继承规模的增加而扩大 应该怎么样呢? 设计原则一: 找出应用中需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。 结果: 代码改变引起的后果减少 系统更有弹性 取出易于变化的部分 设计原则二: 针对接口编程,而不是针对实现编程 那么,鸭子的行为将放在一个类中,这样,鸭子类就不需要知道行为的实现细节。 为什么不使用抽象类,进而使用多态呢? 例如: 存在问题: 针对实现编程 针对接口/超类型编程 更棒的是: 在运行时才指定具体实现的对象 两个行为接口 这样的设计充分地体现了继承的优点,而摒弃了其不足。 进行整合,使用“委托”方式来处理鸭子的行为 添加两个实例变量 实现行为“委托” 如何设定行为的实例变量 那么,我们就来看看是否达到设计效果。 Duck.java FlyBehavior.java QuackBehavior.java MiniDuckSimulator.java RUN 下面,看看如何设定动态行为 在Duck类中添加2个方法 建立新类ModelDuck 建立新的行为类FlyRocketPow
您可能关注的文档
- 西安杨森采乐营销策划方案-精品·公开课件.ppt
- 智能交通系统概述-精品·公开课件.ppt
- 海亚马逊攻略 淘攻略 2013最新海淘攻略 海淘钙镁锌-精品·公开课件.ppt
- 微博-精品·公开课件.ppt
- 这样投资不动产投资信托基金(REITs)就对了_罗志强-精品·公开课件.ppt
- 联想A398t不开机升级教程A398T救砖固件刷机方法-精品·公开课件.ppt
- 网络新闻专题策划与制作-精品·公开课件.ppt
- 恒美-广告策略-精品·公开课件.ppt
- 九年级化学元素7-精品·公开课件.ppt
- 银行融资贷款流程-精品·公开课件.ppt
- 4.4 控制系统的设计与实施(教学设计)高中通用技术苏教版2019必修2.docx
- 2026届衡水市第十三中学高三第一次质量调研(一模)数学试题.doc
- 3.1.1关系数据结构及关系代数教学设计-浙教版高中信息技术选修三.docx
- 高考化学二轮复习 阿伏伽德罗常数.docx
- 运筹学期末复习完全手册(直接使用版).docx
- 人工肝治疗中的家属支持与护理.pptx
- 人工肝治疗后的康复护理.pptx
- 4 自由落体运动(表格式教学设计)高中物理人教版2019必修第一册.docx
- 第05讲 充分条件、必要条件、充要条件(八大题型)新高一数学(苏教版2019必修第一册).docx
- 29 古代诗歌文本比较鉴赏题(比较形象、语言、表达技巧、情感态度)高考语文二轮复习专题.docx
最近下载
- 清真内审检查表.doc VIP
- 七年级语文上册知识点填空默写.docx VIP
- SPMP-STD-EM2001-2015_石油化工装置工艺设计包.pdf VIP
- DB34∕T 5365-2026 散装食品经营管理规范.pdf VIP
- 2026《初中生物•53同步练习》八年级下册答案.docx VIP
- 2026《初中化学•53同步练习》九年级下册.docx VIP
- 历史文化名城保护理论与规划期末试卷AB卷资料2023年修改.pdf VIP
- 七年级英语上册知识点填空默写.docx VIP
- 2026届内蒙古自治区呼和浩特市实验中学中考语文最后一模试卷含解析.doc
- 2026年高考语文备考之必背补充教材篇目(原文+注释+翻译).docx VIP
原创力文档

文档评论(0)