设计模式–工厂模式 AND 抽象工厂

工程模式包含以下几个核心角色:

抽象产品(Abstract Product):定义了产品的共同接口或抽象类。它可以是具体产品类的父类或接口,规定了产品对象的共同方法。

具体产品(Concrete Product):实现了抽象产品接口,定义了具体产品的特定行为和属性。

抽象工厂(Abstract Factory):声明了创建产品的抽象方法,可以是接口或抽象类。它可以有多个方法用于创建不同类型的产品。

具体工厂(Concrete Factory):实现了抽象工厂接口,负责实际创建具体产品的对象。

简单工厂:

简单工厂

         每当我们用到某些具体类我们需要想到他的名字,然后再创建一个实例,这种过程很麻烦。为了少一点麻烦,我们不妨把这种创建或者制造过程交给一个 “工厂” 帮我们这么做,省去那些制造步骤。做一个伸手党,类似于“我太累了, 工厂你给我造一个吧”。 这个图片里就是我们把具体的类A,B,C的制造权交给了工厂,想要就问工厂要。

        问:考虑一种情况,如果我们想要一种产品,但是不确定具体某个产品叫什么,怎么办?
        答:我们去工厂看里面有造什么东西,从而找到自己所需的产品。
        问:那如果此时工厂有大量的产品,一时半会儿可能浏览不过来,又怎么办?
        答:此时应该对工厂动刀了。 显然一个工厂是不够的, 我们可以创办多个工厂,每个工厂对应不同的类别,我们找某个产品时,去相应类别的工厂 去找,去要就好了。

        与上面同理,把不同工厂想象成不同的产品,每次手动创建一个工厂太累了,我还是想做伸手党,来个超级工厂吧,我告诉你造哪个你就给我哪个。
        

工厂模式: 就是把具体类的创建交给一个管理类(工厂)来创建

抽象工厂模式: 再把具体工厂的创建交给一个管理类(超级工厂)来创建

版权声明:
作者:ht
链接:https://www.techfm.club/p/77899.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>