zoukankan      html  css  js  c++  java
  • 设计模式(二)---工厂方法模式

    设计模式(二)---工厂方法模式

            工厂方法(Factory Method)模式的意义是定义一个创建产品对象的工厂接口。将实际创建工作推迟到子类其中。核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责详细工厂子类必须实现的接口,这样进一步抽象化的优点是使得工厂方法模式能够使系统在不改动详细工厂角色的情况下引进新的产品。



    抽象工厂源码

    public interface Creator
    {
    	/**
    	 * 工厂方法
    	 */
    	public Product factory();
    }

    抽象产品源码

    public interface Product
    {
    }

    详细工厂1源码

    public class ConcreteCreator1 implements Creator
    {
    	/**
    	 * 工厂方法
    	 */
    	public Product factory()
    	{
    		return new ConcreteProduct1();
    	}
    }

    详细工厂2源码

    public class ConcreteCreator2 implements Creator
    {
    	/**
    	 * 工厂方法
    	 */
    	public Product factory()
    	{
    		return new ConcreteProduct2();
    	}
    }

    详细产品1源码

    public class ConcreteProduct1 implements Product
    {
    	public ConcreteProduct1()
    	{
    		//do something
    	}
    }

    详细产品2源码

    public class ConcreteProduct2 implements Product
    {
    	public ConcreteProduct2()
    	{
    		//do something
    	}
    }

    客户源码

    public class Client
    {
    	private static Creator creator1,creator2;
    	private static Product product1,product2;
    	public static void main(String[] args)
    	{
    		creator1=new ConcreteCreator1();
    		product1=creator1.factory();
    		creator2=new ConcreteCreator1();
    		product2=creator2.factory();
    	}
    }


  • 相关阅读:
    node基础和express服务器框架知识点总结
    Nacos配置服务原理
    Queue-PriorityQueue源码解析
    Mysql存储结构
    Mybatis处理动态占位符实现
    通过ThreadPoolExecutor源码分析线程池实现原理
    jdk8函数接口
    Logback源码分析
    Spring注解Component原理源码解析
    ApplicationListener原理分析
  • 原文地址:https://www.cnblogs.com/mfmdaoyou/p/6768117.html
Copyright © 2011-2022 走看看