工厂模式

tech2022-10-16  137

一、概述

       1.1 说人话:

        工厂,顾名思义,就是用来生产某种物品的组织。在程序设计的过程中,我们一般用它来生产对象。程序设计过程中,我们把某一类对象的生产操作交给制定的工厂,比如CarFactory 、AnimalFactory分别用来生产不同的汽车和不同的动物。

       1.2 好处:

         对象的统一管理,提高开发效率,便于维护比如我们之前需要一个汽车对象 Car car = new Car();用一次new一次,用100次就要new一百次,比如某一天,产品提了一个需求,要将所有的燃油汽车车牌类型全部换成新能源,于是乎,我们开始一个一个的修改。但是如果我们使用的工厂模式,我们只需要在源头上做一个简单的修改操作,实现全局修改的需求。

二、简单工厂

            直接通过一个Factory类创建多个实体类对象

            public abstract class SimpleBeanFactory {                 abstract Object getBean(String objFlag);             }

            public class SimpleObj extends SimpleBeanFactory {                 @Override                 Object getBean(String objFlag) {                      if (Objects.equals("A", objFlag)) {                           return new ObjA();                      } else if(Objects.equals("B", objFlag)) {                           return new ObjB();                     }                  return null;                }            }

三、抽象工厂

         一个抽象产品类,可以派生出多个具体产品类。一个抽象工厂类,可以派生出多个具体工厂类。每个具体工厂类只能创建一个具体产品类的实例。

        一个接口interface AnimalBeanFactory,多个抽象类 abstract class DogFactory ;abstract class CatFactory, 其中DogFactory用来生产 泰迪、金毛、萨摩....    CatFactory用来生产 美短、英短、土猫...

 

 

最新回复(0)