Factory(工厂模式)和 Abstract Factory Pattern (抽象工厂模式)

本文详细介绍了工厂模式和抽象工厂模式。工厂模式通过创建接口和实现类,由子类决定实例化哪个对象,提高了扩展性和产品创建的灵活性。抽象工厂模式则更进一步,提供创建一系列相关对象的接口,确保客户端始终使用同一产品族中的对象,但扩展性较差。文章通过创建抽象类、实体类和工厂类,阐述了两种模式的具体实现步骤。
摘要由CSDN通过智能技术生成

Factory(工厂模式)

介绍

  • 工厂模式:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。 是 Java 中最常用的设计模式之一,这种类型的设计模式属于创建型模式 。

优点:

  • 一个调用者想创建一个对象,只要知道其名称就可以了
  • 扩展性高,如果想增加一个产品,只要扩展一个工厂类就可以。
  • 屏蔽产品的具体实现,调用者只关心产品的接口。

缺点:

  • 每次增加一个产品时,都需要增加一个具体类和对象实现工厂,使得系统中类的个数成倍增加,在一定程度上增加了系统的复杂度,同时也增加了系统具体类的依赖。这并不是什么好事。

实现

在这里插入图片描述

1、创建一个接口

public interface Wearable {
   
    void wear();
}

2、 创建实现接口的实体类

public class Hat implements Wearable{
   
    @Override
    public void wear() {
   
        System.out.println("我带了一顶帽子.....");
    }
}
public class Jacket implements Wearable{
   
    @Override
    public void wear() {
   
        System.out.println("我穿了一件夹克.....");
    }
}

3、 创建一个工厂,生成基于给定信息的实体类的对象

public class WearFactory {
   
     public List<Wearable> wear(String ...classNames) {
   
         List<Wearable> list = new ArrayList<>();
       
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值