美文网首页
设计模式 | 创建型模式 | 简单工厂

设计模式 | 创建型模式 | 简单工厂

作者: 暴走的朝天椒 | 来源:发表于2021-03-08 22:52 被阅读0次

简单工厂的定义

提供一个创建对象实例的功能,而无需关心其具体实现。被创建实例的类型可以是接口、抽象类、也可以是具体的类。

简单工厂解决问题的思路

为了不让模块外部知道模块内部的具体实现,所以干脆新建一个类,在这个类里创建接口,然后把建好的接口返回给客户端。把这个类就称为简单工厂(Factory)。

简单工厂的结构与说明

简单工厂的结构示意图.png
  • Api:定义客户所需要的功能接口
  • Impl:Api的具体实现类。
  • Factory:工厂类,选择合适的实现类来创建Api接口对象。
  • Client:客户端,通过Factory来获取Api接口对象。

简单工厂调用顺序示意图

简单工厂调用顺序示意图.png

简单工厂实例代码

/**
 * 定义接口,可以通过简单工厂来实现
 */
public interface Api {
    public void operation(String s);
}
/**
 * 接口的具体实现类A
 */
public class ImplApiA implements Api{
    @Override
    public void operation(String s) {
        System.out.println("A s:" + s);
    }
}
/**
 * 接口的具体实现类B
 */
public class ImplApiB implements Api{
    @Override
    public void operation(String s) {
        System.out.println("B s:" + s);
    }
}
/**
 * 工厂类,用来创建Api对象
 */
public class Factory {
    /**
     * 创建具体Api对象的方法
     * @param condition
     * @return
     */
    public static Api createApi(int condition){
        Api api = null;
        if (condition == 1){
            api = new ImplApiA();
        }else {
            api = new ImplApiB();
        }
        return api;
    }
}
/**
 * 客户端,使用Api接口
 */
public class Client {
    public static void main(String[] args) {
        Api api = Factory.createApi(1);
        api.operation("正在使用简单工厂");
    }
}

相关文章

  • 简单工厂模式

    Android进阶之设计模式 简单工厂模式 简单工厂模式(又叫作静态工厂方法模式), 其属于创建型设计模式,但并不...

  • android常用设计模式

    26种设计模式 创建型设计模式[5] 单例模式,工厂模式,抽象工厂模式,建造模式,原型模式,[简单工厂模式] 结构...

  • 2021-11-16 - 学习记录

    设计模式学习:创建型:工厂(工厂方法,抽象工厂),建造者,单例,原型 设计模式:工厂模式 简单工厂 工厂方法 抽象工厂

  • java设计模式-工厂模式之简单工厂

    工厂模式属于创建型设计模式(用于创建对象),今天这里要讲的就是工厂三兄弟之简单工厂。工厂三兄弟:(简单工厂,工厂,...

  • 重温设计模式

    设计模式 创建型设计模式:1.简单工厂模式(Simple Factory Pattern):专门定义一个类(工厂类...

  • Android设计模式-模版方法模式

    UML关系简单介绍UML简单使用的介绍创建型设计模式Android设计模式-单例模式Android设计模式-工厂模...

  • Android设计模式-迭代器模式

    UML关系简单介绍UML简单使用的介绍创建型设计模式Android设计模式-单例模式Android设计模式-工厂模...

  • Android设计模式-享元模式

    UML关系简单介绍UML简单使用的介绍创建型设计模式Android设计模式-单例模式Android设计模式-工厂模...

  • Android设计模式-桥接模式

    UML关系简单介绍UML简单使用的介绍创建型设计模式Android设计模式-单例模式Android设计模式-工厂模...

  • Android设计模式-命令模式

    UML关系简单介绍UML简单使用的介绍创建型设计模式Android设计模式-单例模式Android设计模式-工厂模...

网友评论

      本文标题:设计模式 | 创建型模式 | 简单工厂

      本文链接:https://www.haomeiwen.com/subject/ghnmqltx.html