设计模式 - 简单工厂模式

简单工厂模式是一种设计模式,旨在隔离客户类与产品子类的实例化过程,提供一个公共接口来创建对象,降低代码耦合。通过创建颜色接口、颜色枚举和工厂类,可以根据颜色枚举来生产不同类型的颜色产品,使得客户类只需调用工厂即可获取所需产品,无需关心具体实现。

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

设计模式 - 简单工厂模式


1、意图

在创建一个对象时不向客户暴露内部细节,并提供一个创建对象的通用接口。

这样做能把客户类和具体子类的实现解耦,客户类不再需要知道有哪些子类以及应当实例化哪个子类。客户类往往有多个,如果不使用简单工厂,那么所有的客户类都要知道所有子类的细节。而且一旦子类发生改变,例如增加子类,那么所有的客户类都要进行修改。

2、实例
1、创建颜色接口 - 定义生产的产品是什么
public interface Color {
    void execute();
}
2、创建颜色枚举 - 定义生产哪些类型的产品
public enum ColorEnum {

    RED,BLUE,YELLOW
}
3、根据颜色枚举创建产品 - 根据产品清单生产产品
@Slf4j
public class Blue implements Color {
    @Override
    public void execute() {
        log.info("Blue");
    }
}
@Slf4j
public class Red implements Color
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

简简单单OnlineZuozuo

感谢哥哥姐姐的打赏

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

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

打赏作者

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

抵扣说明:

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

余额充值