zoukankan      html  css  js  c++  java
  • 工厂方法的设计模式

    概述:
    定义一个用于创建对象的接口,让子类决定实例化哪一个类。FactoryMethod使一个类的实例化延迟到其子类。

    适用性:

    1. 当一个类不知道它所必须创建的对象的类的时候
    2. 当一个类希望由它的子类来指定它所创建的对象的时候
    3. 当类将创建对象的职责委托给多个帮助子类中的某一个,并且你希望将哪一个帮助子类是代理者这一信息局部化的时候

    总结:
    FactoryMethod模式是设计模式中应用最为广泛的模式,在面向对象的编程中,对象的创建工作非常简单,对象的创建时机却很重要。FactoryMethod解决的就是这个问题,它通过面向对象的手法,将所要创建的具体对象的创建工作延迟到了子类,从而提供了一种扩展的策略,较好的解决了这种紧耦合的关系。

    //接口的应用:工厂方法的设计模式
    public class TestFactoryMethod {
    	public static void main(String[] args) {
    		IWorkFactory i = new StudentWorkFactory();
    		i.getWork().doWork();
    		
    		IWorkFactory i1 = new TeacherWorkFactory();
    		i1.getWork().doWork();
    	}
    }
    
    interface IWorkFactory{
    	Work getWork();
    }
    class StudentWorkFactory implements IWorkFactory{
    
    	@Override
    	public Work getWork() {
    		return new StudentWork();
    	}
    	
    }
    class TeacherWorkFactory implements IWorkFactory{
    
    	@Override
    	public Work getWork() {
    		return new TeacherWork();
    	}
    	
    }
    
    interface Work{
    	void doWork();
    }
    
    class StudentWork implements Work{
    
    	@Override
    	public void doWork() {
    		System.out.println("学生写作业");
    	}
    	
    }
    class TeacherWork implements Work{
    
    	@Override
    	public void doWork() {
    		System.out.println("老师批改作业");
    	}
    	
    }
    
  • 相关阅读:
    web.xml配置文件
    数组去重问题
    Mysql优化
    点赞功能
    IDEA的一些使用小技巧
    Maven
    AJAX
    HTTP响应头拆分/CRLF注入详解
    对寄存器ESP和EBP的一些理解
    汇编调用指令的执行过程
  • 原文地址:https://www.cnblogs.com/liyao0312/p/11627457.html
Copyright © 2011-2022 走看看