您的位置 首页 java

设计模式之工厂模式系列-简单工厂模式

工厂模式 的分类:

(1)简单工厂(Simple Factory)模式

(2)工厂方法(Factory Method)模式

(3)抽象工厂(Abstract Factory)模式

概念而已,一看见有点不懂很正常,关键是坚持往下看。

在开源框架中的使用

(1) Spring 中通过getBean(“xxx”)获取Bean;

(2)Spring中 rabbitmq 的连接工厂类 ConnectionFactory

(3) jdbc 创建连接工厂类 DriverManager

(4) slf4j 的日志工厂类 LoggerFactory

为什么要用工厂模式

(1) 解耦 :把对象的创建和使用的过程分开

(2)降低代码重复: 如果创建某个对象的过程都很复杂,需要一定的代码量,而且很多地方都要用到,那么就会有很多的重复代码。

(3) 降低维护成本 :由于创建过程都由工厂统一管理,所以发生业务逻辑变化,不需要找到所有需要创建对象的地方去逐个修正,只需要在工厂里修改即可,降低维护成本。

还是懵,不要紧,这些基本来说不是很重要,接着往下看

简单工厂模式

(1)介绍

严格的说,简单工厂模式并不是23种常用的设计模式之一,它只算工厂模式的一个特殊实现。简单工厂模式在实际中的应用相对于其他2个工厂模式用的还是相对少得多,因为它只适应很多简单的情况。

(2)简单工厂模式角色分配

工厂( Factory )角色:简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类可以被外界直接调用,创建所需的产品对象。

抽象产品( Product )角色:简单工厂模式所创建的所有对象的父类,它负责描述所有实例所共有的公共接口。

具体产品(Concrete Product)角色:简单工厂模式的创建目标,所有创建的对象都是充当这个角色的某个具体类的实例。

下面才是真正的我们要看的,一定要仔细看,这是基础,后面会紧接着讲述工厂方法模式,抽象工厂方法模式

main发放的测试结果:

公交车行驶中。。。

出租车行驶中。。。

(3) 使用 反射机制 改善简单工厂

main发放的测试结果:

公交车行驶中。。。

出租车行驶中。。。

如果代码你仔细看的话,你会发现原来这么简单,其实就是很简单,这个只是一个思路或者是经验的总结,持续关注,跟进讲解 工厂方法模式,抽象工厂方法模式以及其他设计模式

文章来源:智云一二三科技

文章标题:设计模式之工厂模式系列-简单工厂模式

文章地址:https://www.zhihuclub.com/187859.shtml

关于作者: 智云科技

热门文章

网站地图