美文网首页
简单工厂

简单工厂

作者: Xiuz_hmy | 来源:发表于2018-11-05 17:36 被阅读0次

提供创建对象的功能,不需要管具体的实现。好处:降低客户端与模块之间的耦合度

下面通过一个简单的例子来讲解什么是简单工厂

simple_factory_package_diagram.png simple_factory_class_diagram.PNG simple_factory_sequence_diagram.PNG
//这是一个功能接口
public interface Api {
    void operator();
}

//ImplA,ImplB,ImplC是这个功能的实现类
public class ImplA implements Api {
    @Override
    public void operator() {
        System.out.println("ImplA.operator");
    }
}

现在需要根据不同情况来实现不同的功能,为了方便我们可以封装第一个工厂类来生产响应的功能

public class ApiFactory {
//通过new一个实例化对象来返回所需要的功能,这种方法在安卓源码中应用的非常多
public static Api create(int type) {
    switch (type) {
        case 1:
            return new ImplA();
        case 2:
            return new ImplB();
        case 3:
            return new ImplC();
        default:
            return new ImplA();
    }
}
//通过全类名来反射获取对应的对象,这种方法在在安卓中很少见,反而在javaEE中从配置文件加载类中用的特别多
public static <T extends Api> T create(Class<T> clz){
    Api api = null;
    try {
        api = (Api) Class.forName(clz.getName()).newInstance();
    } catch (InstantiationException e) {
        e.printStackTrace();
    } catch (IllegalAccessException e) {
        e.printStackTrace();
    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    }
    return (T) api;
}
}

相关文章

  • 工厂模式理解

    工厂模式分为简单工厂、工厂模式、抽象工厂三种层级概念。简单工厂不属于23种设计模式,抽象工厂才是。 简单工厂 简单...

  • 设计模式-工厂模式

    设计模式1 设计模式2 工厂模式 工厂模式可简单的分为三类:简单工厂,工厂方法,抽象工厂 简单工厂模式 定义 简单...

  • 工厂模式

    首先,简单工厂模式不属于23中涉及模式,简单工厂一般分为:普通简单工厂、多方法简单工厂、静态方法简单工厂。 A、简...

  • [Android]三种工厂模式总结。

    Android中,工厂模式分为三种:简单工厂模式、工厂方法模式、抽象工厂模式。 一.简单工厂模式。 定义:简单工厂...

  • 工厂模式

    什么是工厂模式? 工厂模式分为三种:简单工厂工厂方法抽象工厂今天主要介绍的简单工厂:简单工厂(SimpleFact...

  • 设计模式(java)- 单例模式

    之前学习是简单工厂模式、工厂方法模式、抽象工厂模式,复习一下 简单工厂模式 简单工厂模式大概就是创建一个简单工厂类...

  • 2016.06笔记

    iOS设计模式之工厂模式(简单工厂,工厂方法,抽象工厂) 简单工厂:简单工厂模式的工厂类一般是使用静态方法,通过接...

  • 工厂模式——IOS版

    一、前言 工厂模式种类:简单工厂、工厂方法、抽象工厂 IOS中的应用:类簇 二、简单工厂 介绍:简单工厂模式是属于...

  • 相近设计模式比较

    设计模式干货: 简单工厂模式 vs. 工厂模式 vs. 抽象工厂模式简单工厂和工厂模式区别? 简单工厂没有多个子类...

  • 设计模式-工厂模式

    一、工厂模式分类 简单工厂模式 工厂方法模式 抽象工厂模式 二、简单工厂模式 简单工厂就是讲需要new对象的那段代...

网友评论

      本文标题:简单工厂

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