设计模式之工厂方法
来源:互联网 发布:网络电视直播翡翠台 编辑:程序博客网 时间:2024/05/18 21:38
工厂方法
概述:定义一个用于创建对象的接口,让子类决定实例化哪一个类,FactoryMethod使一个类的实例化延迟到其子类。
适用性:
1.当一个类不知道它所必须创建的对象的类的时候
2.当一个类希望由它的子类来指定它所创建的对象的时候
3.当类将创建对象的职责委托给多个帮助子类中的某一个,并且你希望将哪一个帮助子类使代理者这一信息局部化的时候
圆圈代表接口,两边是实现类。
//工厂方法的设计模式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("老师批改作业"); }}
0 0
- 设计模式之工厂方法
- 设计模式之工厂方法
- 设计模式 之 工厂方法
- 设计模式 之 工厂方法
- 设计模式之工厂方法
- 设计模式之工厂方法
- 设计模式之工厂方法
- 设计模式之工厂方法
- 设计模式之工厂方法
- 设计模式之工厂方法
- 设计模式之工厂方法
- 设计模式之工厂方法
- 设计模式之工厂方法
- 设计模式之工厂方法
- 设计模式之工厂方法
- 设计模式之工厂方法
- 《设计模式》之工厂方法
- 设计模式之--工厂方法
- 412. Fizz Buzz
- 第十七周—C语言 oj(2006)
- js去除浏览器默认底图
- 学习记录——运输层(3)
- java中Map,List与Set的区别
- 设计模式之工厂方法
- Codeforces 30D
- 批处理作业问题
- java web 图片上传功能
- 文本文件里如何快速在每行头尾都加上指定的内容---正则表达式(一)
- C# 结构体 struct
- jme3模型纹理合并导出j3o
- SUMO文档063:osmWebWizard
- 图像识别(8)——使用OpenCV预览USB摄像头+曝光设置