工厂模式(简单工厂,工厂方法,抽象工厂)

工厂顾名思义就是创建产品,工厂分为三种:简单工厂,工厂方法,抽象工厂。该模式用于封装和管理对象的创建,是一种创建型模式。

1)简单工厂

该模式通过向工厂传递类型来指定要创建的对象

  • 提供一个方法,根据类型创建

  • 为每一种类型分别提供一个方法
    在这里插入图片描述
    简单工厂的优缺点:

  • 优点:能够决定创建哪个具体类的对象,明确区分各自的职责和权力,有利于整个软件体系结构的优化。

  • 缺点:容易违反高内聚低耦合的开闭原则。

2)工厂方法

简单工厂模式中所有类型共用一个工厂,违反了开闭原则。工厂方法是为每个类型分配一个工厂,当新增一个类型,便新增一个工厂。
在这里插入图片描述

3)抽象工厂

上面两种模式不管工厂怎么拆分抽象,都只是针对一类产品AbstractProduct,当需要生成另外一类产品AbstractProductB,需要用到抽象工厂。抽象工厂模式通过在AbstarctFactory中增加创建产品的接口,并在具体子工厂中实现新加产品的创建,当然前提是子工厂支持生产该产品。否则继承的这个接口可以什么也不干。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

༄༊心灵骇客༣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值