工厂模式总结

博客介绍了工厂模式,它将对象创建操作封装在工厂中。工厂模式分为简单工厂、工厂方法和抽象工厂。简单工厂创建方法集中,扩展性差;工厂方法为各产品设工厂,横向扩展性好;抽象工厂为产品族设抽象类和工厂,对产品族横向扩展性好,但对具体产品扩展不友好。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

工厂是用来生产对象的,也就是把new Object()操作放到了工厂里面。

工厂模式分为简单工厂、工厂方法,抽象工厂。

简单工厂就是建一个工厂类,里面包含各种产品对象的创建方法。

优点:简单,类少

缺点:扩展性不好,管理的事情比较多

 

工厂方法就是为每一种产品提供一个工厂类去创建,各产品的创建逻辑,在各产品工厂类中去实现。

优点:对产品横向扩展性好

缺点:类多,多个产品的组合情况比较麻烦

 

抽象工厂就是为每个产品提供一个抽象类,并为一族产品(多个抽象产品的组合)提供工厂类,这个工厂类是abstract,类中包含创建抽象产品族的抽象方法。 具体某一族产品的生产工厂需要继承此抽象工厂,并实现里面创建各产品的抽象方法。

所在抽象工厂里面,既有抽象产品,而且具体的产品需要继承自抽象产品,也有抽象工厂,而且工厂里面的抽象方法是创建抽象产品, 还需要具体的工厂,继承自抽象工厂并实现抽象方法,创建具体的产品。

优点:对于一族产品的横向扩展性好。

缺点:对于具体产品的扩展不友好,类也比较多。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值