AbstractFactory模式

灵魂三问:
1,什么是抽象工厂模式?
2,它有什么用?
3,怎么用?

什么是抽象工厂模式?

前面我们说过工厂模式,那么什么是抽象工厂模式呢?
在这里插入图片描述
抽象工厂就是不知道这个工厂具体是干什么的,只有实现其接口的工厂才是具体的工厂。
比如我们有一块地,但是我们不知道要建什么工厂,只有确定好了我们才知道我们要建纺织厂。

它有什么用?

抽象工厂的工作是将“抽象零件”组装成“抽象产品”。在这里,我们不关心零件的饿具体实现,而是只关心接口(API)。我们仅使用该接口(API)将零件组装成产品。

怎么用?

类的划分:
在这里插入图片描述


类总览:
在这里插入图片描述


类图:
在这里插入图片描述


文件夹中源文件的结构:
在这里插入图片描述


编译运行:
在这里插入图片描述
在这里插入图片描述


抽象的饿零件:Item类:
在这里插入图片描述
Link类:
在这里插入图片描述
Tray类:
表示一个含有多个Link类和Tray类的容器:
在这里插入图片描述


抽象的产品:Page类:
抽象的表示HTML页面的类。如果将Link和Tray比作抽象的零件,那么Page就是抽象的产品。
在这里插入图片描述


抽象的工厂:Factory类:
在这里插入图片描述
注意是如何生成具体的工厂类的


使用工厂将零件组装为产品:Main类:

在这里插入图片描述


具体的工厂类:ListFactory类
在这里插入图片描述


具体的零件:ListLink类
在这里插入图片描述
ListTray类:
在这里插入图片描述


具体的产品:ListPage类
在这里插入图片描述


如果只是使用一个工厂,这阵势有点大,抽象工厂的是为了创建很多具体工厂而生的,我们也可以添加其他工厂。


待续。。。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值