美文网首页
简单工厂模式

简单工厂模式

作者: 不鸟万峰 | 来源:发表于2016-08-16 23:47 被阅读13次

    简单工程模式的目的

    简单工厂模式属于创建型模式,主要用于创建对象.就像工厂生产东西一样,我们需要东西时,向工程提交订单,提出我们的需求,然后就等工厂生产,供货.我们并不需要知道工厂是怎么生产东西,只需要检查东西是否符合我们的要求.

    简单工程模式概述

    简单工厂模式,又称静态工厂方法模式,这个模式用于创建对象.在简单工厂模式下,客户端提供不同的参数,工厂根据参数类型返回对应的实例.简单工厂模式中,有一个用来生成其他对象实例的类,这些实例通常有共同的父类.

    要点

    • Factory :工厂角色,负责创建实例,内部实现静态工厂方法,返回抽象产品角色
    • Product: 抽象产品角色,要创建的实例的父类,提供所有实例的公共接口
    • ConcreteProduct:具体产品角色,要创建的目标,机场抽象产品角色,实现相关方法.

    将对象的创建和对象本身事务分离,降低系统额耦合读.只需传入正确的参+数 ,酒可以获得需要的对象,不用管对象是如何创建出来的.

    实现

    • 抽象产品类
    public abstract class Product{
      //所有产品都有的方法
      public void sameMethod(){
    
      }
    
      //抽象方法,不同的子类有不同的实现.
      public abstract void method();
    }
    
    • 具体产品类
    public class ProductOne extends Product{
        //实现业务方法
        public void method(){
            //业务逻辑
        }
    }
    
    • 工厂类
    public class Ractory{
      public static Product createProduct(String args){
        Product product = null;
        if ( args.equals(args1)) {
            product = new ProductOne();
        }else if(args.equals(args2)){
            product = new ProductTwo();
        }else {
            product = new ProductThree();
        }
    
        return product;
      }
    
    }
    
    
    • 客户端调用
      public class Client{
        public static void main(String[] args){
          Product product ;
          product = Factory.createProduct("one");
        }
      }
    

    简单工厂模式的使用场景

    • 工厂类负责创建的对象比较少,
    • 客户端不关心对象创建的细节,只需要知道传入的参数和返回的结果.

    本质

    通过选择不同的参数,创建不同的对象,不需要创建工厂实例,直接使用静态方法.

    相关文章

      网友评论

          本文标题:简单工厂模式

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