美文网首页
Java设计模式——工厂模式

Java设计模式——工厂模式

作者: icyage | 来源:发表于2017-11-29 20:56 被阅读10次

Java设计模式之工厂模式

回顾

上期我们介绍了一个非常简单的设计模式,也是平时开发工作中最常见也是最常用的设计模式:单例模式。如果小伙伴们忘记了单例模式是什么样的,或者忘记了Java怎样优雅的实现单例模式的话,建议先阅读上一篇《Java设计模式——单例模式》

工厂模式

介绍

工厂顾名思义就是重复生产产品的地方,那么工厂模式就是生产实例对象的地方。

问题

在平时的开发中,我们会遇到很多实例对象创建的时候,那么遇到这种比较大的类,我们怎么办呢?

通常我们会这样

或者这样

思考

这样的代码会有什么样的问题呢?

  • 代码中会到处出现各种类似的创建代码,不便于统一管理,一旦类的属性有变更维护成本非常大。
  • 即使是这个类始终不变,不过如果使用的地方特别多,也就会出现很多重复代码
  • 面向对象编程,应更关注于对象中有哪些方法可以使用,而不是如何构造这个对象

这里就引出了工厂模式的概念,将对象生成的逻辑合并到一个类中统一管理,那么这个类就是我们的工厂。
工厂模式的概念本身是一个模式的集合,对于经典的设计模式中,只有工厂方法模式和抽象工厂模式两种。还有一种描述也需要特别关注下,很多地方描述的简单工厂本身不是一个设计模式,是演化工厂方法模式中过度的工厂模式版本。把其看作一个工具类更合适一些。

简单工厂

实例

简单工厂



输出内容


可以看出来这个代码中实现了一个静态方法,通过此方法可以获取想要的实例对象。
实例对象——以类为模版产生的具体的实例对象
类对象——类本身

工厂方法模式

简介

工厂类通过实现生产的生产方法来生产具体的产品。(这里有一点必须要要注意,这里的工厂只生产一种产品)


实例

抽象工厂模式

简介

抽象出生产产品族的方法,然后通过继承方式来实现各产品的实现方法。

实例

总结

  • 简单工厂——用来生产同一等级结构中的任意产品
  • 工厂方法——用来生产同一等级结构中的固定产品
  • 抽象工厂——用来生产不同产品族的全部产品

相关文章

  • 工厂模式

    java设计模式-工厂模式 工厂模式: 工厂模式是java设计模式里最常用的设计模式之一。 工厂模式属于创建型模式...

  • Java设计模式教程

    Java设计模式教程 Java工厂设计模式 Java抽象工厂模式 Java单例模式 Java建造者(Builder...

  • Java设计模式之01_Factory(工厂模式)

    更多Java设计模式:Java设计模式-目录 一、工厂模式介绍 工厂模式专门负责将大量有共同接口的类实例化。工厂模...

  • 设计模式——工厂模式和抽象工厂模式

    Java设计模式——工厂模式 工厂模式和抽象工厂模式都属于创建型模式。 创建型模式这些设计模式提供了一种在创建对象...

  • 设计模式之工厂模式

    工厂模式 工厂模式(Factory Pattern)是Java中最常用的设计模式之一,这种设计模式属于创建型模式,...

  • 设计模式系列-抽象工厂模式

    JAVA设计模式系列: 单例模式 观察者模式 模板方法模式 简单工厂模式 抽象工厂模式 抽象工厂模式 定义 抽象工...

  • 设计模式-工厂模式

    工厂模式定义: 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式...

  • 设计模式之工厂模式详解(附源代码)

    工厂模式 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创...

  • 工厂模式

    工厂模式 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创...

  • 设计模式--简单工厂模式

    什么是工厂模式 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式...

网友评论

      本文标题:Java设计模式——工厂模式

      本文链接:https://www.haomeiwen.com/subject/rksdpxtx.html