[工厂方法模式设计模式浅谈.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[工厂方法模式设计模式浅谈

工厂方法模式设计模式浅谈 工厂方法经常用在以下两种情况中: 第一种情况是对于某个产品,调用者清楚地知道应该使用哪个具体工厂服务,实例化该具体工厂,生产出具体的产品来。Java Collection中的iterator() 方法即属于这种情况。 第二种情况,只是需要一种产品,而不想知道也不需要知道究竟是哪个工厂为生产的,即最终选用哪个具体工厂的决定权在生产者一方,它们根据当前系统的情况来实例化一个具体的工厂返回给使用者,而这个决策过程这对于使用者来说是透明的。工厂方法模式(Factory Method)的意义是定义一个创建产品对象工厂接口,工作子类。核心工厂类不再,这样核心类成为一个抽象工厂角色,,这样是使得工厂方法模式可以使系统在不工厂角色的情况下引进新的产品工厂方法模式是的衍生,解决了许多简单工厂模式的问题。 工厂方法模式的对简单工厂模式进行了抽象。有一个抽象的,这个类将不再负责的产品生产,的生产工作由子类去完成。在模式中,工厂类和产品类可以对应。一个抽象工厂对应一个抽象产品,一个具体工厂对应一个具体产品工厂方法模式是最典型的模板方法模式应用。 工厂方法模式可以使系统在不工厂角色的情况下引进新的工厂方法模式和简单工厂模式在结构上的不同是很明显的。工厂方法模式的核心是一个抽象工厂类,而简单工厂模式把核心放在一个具体类上工厂方法模式可以允许很多具体工厂类从抽象工厂类中将创建行为继承下来,从而可以成为多个简单工厂模式的综合,进而推广了简工厂模式。工厂方法模式退化后可以变得很像简单工厂模式。 autocar作为抽象产品类,它可以是一个接口,也可以是一个抽象类,其中包含了所有产品都具有的业务方法yunxing()行驶; (2)具体产品类BMWautocar(宝马汽车类) BMWautocar是抽象产品autocar的接口子类,它是一种具体产品,实现了在autocar接口中定义的业务方法yunxing()行驶; 具体产品类Benzautocar(奔驰汽车类) Benz autocar是抽象产品 autocar的另一个接口子类,与上一个相似。 抽象工厂类 autocarFactory(汽车工厂类) autocarFactory是抽象工厂类,它可以是一个接口,也可以是一个抽象类,它包含了抽象的工厂方法product autocar,返回一个抽象产品 autocar类型的对象。 具体工厂类BMW autocarFactory(宝马汽车工厂类) BMW autocarFactory是具体工厂类,它是抽象工厂类 autocarFactory的子类,实现了抽象工厂方法product autocar();在工厂方法中创建并返回一个对象的具体产品。 (6) 具体工厂类Benz autocarFactory(奔驰汽车工厂类) 辅助代码 总结与思考 工厂方法模式扩展 使用多个工厂方法 在抽象工厂角色中定义多个方法,让具体工厂角色实现这些不同的工厂方法。 产品对象的重复使用 调用产品类的构造函数创建一个新的产品实例,然后将这个实例提供给客户端 多态性的丧失和模式的退化 一个工厂模式方法的实现依赖于工厂角色和产品的多态性。

文档评论(0)

lunwen1978 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档