• FactoryMethodPattern(工厂方法)


    /**
     * 工厂方法模式
     * 分为四部分
     * 1.产品接口
     * 2.产品实例
     * 3.工厂接口
     * 4.工厂实例
     * 工厂类最好用单例模式,但在这里主要是说明工厂方法,就不用单例了
     * @author TMAC-J
     *
     */
    public class FactoryMethodPattern {
    	/**
    	 * 产品
    	 *
    	 */
    	interface IProduct{
    		void doSomething();
    	}
    	
    	public class ConcreteProduct1 implements IProduct{
    		@Override
    		public void doSomething() {
    			System.out.println("concreteProduct do something!");
    		}
    	}
    	
    	public class ConcreteProduct2 implements IProduct{
    		@Override
    		public void doSomething() {
    			System.out.println("concreteProduct2 do something!");
    		}
    	}
    	
    	interface IFactory{
    		IProduct create();
    	}
    	
    	public class ConcreteFactory1 implements IFactory{
    		@Override
    		public IProduct create() {
    			IProduct product = new ConcreteProduct1();
    			return product;
    		}
    	}
    	
    	public class ConcreteFactory2 implements IFactory{
    		@Override
    		public IProduct create() {
    			IProduct product = new ConcreteProduct2();
    			return product;
    		}
    	}
    	
    	public void test(){
    		IFactory concreteFactory1 = new ConcreteFactory1();
    		concreteFactory1.create();//生产产品1
    		IFactory concreteFactory2 = new ConcreteFactory2();
    		concreteFactory2.create();//生产产品1
    	}
    	
    }
    

      

  • 相关阅读:
    1155 Heap Paths (30 分)
    1147 Heaps (30 分)
    1098 Insertion or Heap Sort (25 分)
    12.SpringMVC 获得 请求头信息
    11.SpringMVC 获得Servlet相关API
    10.SpringMVC 自定义类型转换器
    18. VUE 数组的响应式
    017 vue 关于 v-for 指令内部算法
    17. VUE v-show 和 v-if 的区别
    16. VUE 的 小案列
  • 原文地址:https://www.cnblogs.com/yzjT-mac/p/6226728.html
Copyright © 2020-2023  润新知