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("老师批改作业");
    	}
    	
    }
    
  • 相关阅读:
    python实战===用python调用jar包
    Django连接数据库写入数据报错
    Niginx主配置文件参数详解
    uwsgi参数详解
    JSON序列化和反序列化
    ServiceBroker创建流程
    WCF和WebService中获取当前请求报文的方法
    python 关于文件的操作
    关于函数对象的理解
    python,关于用户登录与注册问题
  • 原文地址:https://www.cnblogs.com/liyao0312/p/11627457.html
Copyright © 2011-2022 走看看