1.简单工厂模式.pdf

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.简单工厂模式

探索设计模式——星际争霸探险之旅 探索设计模式 ——星际争霸探险之旅 第一部分:创建模式 第一部分:创建模式 第第一一部部分分::创创建建模模式式 在GoF23种经典设计模式中,按照行为目的划分的话,可分为“创建模式”、“结构模式”、“行 为模式”三大类别。这三大类23 种设计模式,将会在《设计模式探索》中,随着Terran 与Zerg 1 两个种族进行星际争霸大战中,各个角色使用不同的设计模式来解决战场上各种各样的问题,一 一展现设计模式在编程实践中,让代码变得优雅、健壮的魅力。 创建模式包括: FactoryMethod 工厂方法模式 AbstractFactory 抽象工厂模式 Builder 构造器模式 Protoype 原型模式 Singleton 单例模式 1. SimpleFactoryPattern 1. SimpleFactoryPattern 11..简单工厂模式(SSiimmpplleeFFaaccttoorryyPPaatttteerrnn) 严格来说,简单工厂模式并不属于GoF23种经典设计模式之一,但是简单工厂作为一个常用 的编程习惯,在实际程序开发中经常被使用到,能为我们简单而有效的解决一些问题。同时,作 为后续其他创建模式的引导,有必要先讲一下。 目的: 通过一个外界参数来选择不同类的实例。 场景: 在《星际争霸》中,Jim Raynor(游戏剧情中的人族英雄)现在担任一个Terran突击小分队的 队长,在与Zerg 的战斗中,执行侦查和歼灭落单敌人的任务。根据当前的敌军的兵种状况,Terran 后勤部门能提供两种战斗部队:Marine(机枪兵)和Firebat(喷火兵),分别能对Zerg 的Hydralisk (刺蛇)和Zergling(小狗)造成极大的伤害。但是如果顺序反过来,则喷火兵无法战胜刺蛇, 机枪兵也无法战胜小狗。 1 《星际争霸》:著名电子竞技游戏。如果你接触过《星际争霸》这款游戏,那学习到知识的同时将会获得游戏的乐趣,而没有接 触过《星际争霸》的话也没关系,没有游戏背景完全不影响对此系列文章的阅读。 探索设计模式——星际争霸探险之旅 分析: 先介绍两种战斗兵种的UML图和代码,本文后面讨论的“产品”就是指代他们。 图1.1 战斗部队(产品)的UML 图 public interface public interface ppuubblliicc iinntteerrffaaccee ITerranSoldier { // 战士的唯一职责就是战斗 public void int public void int ppuubblliicc vvooiidd attackEnemy(iinntt enemy); } public class implements public class implements ppuubblliicc ccllaassss Firebat iimmpplleemmeennttss ITerranSoldier { public public ppuubblliicc Firebat() { System.out.println(训练出一个喷火兵); } // 喷火兵只能打赢Zergling public void int public void int ppuubblliicc vvooiidd attackEnemy(iinntt enemy) { System.out.println(enemy == Const.Zergling ? 喷火兵成功歼灭了敌人一只Zerg

文档评论(0)

jgx3536 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档