设计模式(五)创建者模式(Builder)-创建型
来源:互联网 发布:专业书籍阅读软件 编辑:程序博客网 时间:2024/05/17 23:03
创建者模式Builder
创建者模式就是将一个复杂对象的构建和它的表示分离,使的同样的构建过程可以创建不同的表示,而在客户端不用知道对象的构建细节。当系统需要创建一组复杂的对象,而且这个复杂的对象组装起来比较麻烦时,就可以使用创建者模式。
将抽象工厂模式中的功能类全部抽取出来放到一个类中
工厂类就是只负责对象的创建,不负责对象的组装,通过Director类来进行组装,
抽象工厂模式和创建者模式很类似,只是创建者模式更进一步的实现了类的单一职责
创建者模式
创建者模式的实现原理
创建者模式实际上就是抽象工厂模式进化版
抽象工厂模式
public abstract class FactoryMethod(){protected abstract Translate factoryMethodTranslate();protected abstract Interpret factoryMethodInterpret();protected abstract Speech factorMethodSpeech();public String sayText(String text) {Translate translate = factoryMethodTranslate();Interpret interpret = factoryMethodInterpret();Speech speech = factorYMethodSpeech();return translate.sayText()+" --" + interpret.sayText()+ "---"+speech.sayText();}}
创建者模式
public abstract class FactoryMethod(){protected abstract Translate factoryMethodTranslate();protected abstract Interpret factoryMethodInterpret();protected abstract Speech factorMethodSpeech();}
public class Director(){private FactoryMethod factoryMethod;public FactoryMethod getFactoryMethod() {return factory;}public void setFactoryMethod(FactoryMethod factoryMethod) {this.factoryMethod = factoryMethod;}public String sayText(String text) {Translate translate = factoryMethodTranslate();Interpret interpret = factoryMethodInterpret();Speech speech = factorYMethodSpeech();return translate.sayText()+" ----" + interpret.sayText()+ "---" +speech.sayText();}}
1 0
- 设计模式(五)创建者模式(Builder)-创建型
- 设计模式--创建型- Builder(生成器/创建者)
- 设计模式(五)创建者模式(Builder)
- 设计模式 (四)创建者模式(Builder)
- 设计模式 (四)创建者模式(Builder)
- 设计模式 (四)创建者模式(Builder)
- 创建者模式(Builder)
- 创建者模式(Builder)
- "围观"设计模式(9)--创建型之创建者模式(Builder Pattern)
- 设计模式学习笔记:Builder(创建者)
- android 创建者(builder)模式
- 设计模式 一 创建者模式 Builder(生成器)
- JAVA设计模式——创建者模式(builder)
- 设计模式(C++版)之(builder)创建者模式
- 设计模式-创建者模式(Builder)
- [设计模式整理笔记 五] 创建者模式(Builder)
- java设计模式(五)创建者模式和原型模式
- 设计模式(五)创建者模式和原型模式
- 《python学习手册》读书笔记(2015.4.26)
- 4.26总结
- 如何有效构建现代企业的人力资源管理体系
- C编译器剖析_6.2 汇编代码生成_寄存器的管理
- hdu 1087 Super Jumping! Jumping! Jumping!-dp 最长上升子序列和
- 设计模式(五)创建者模式(Builder)-创建型
- angularjs表单验证,包括密码长度及两次密码输入是否一致
- c#TextBox输入框自动提示、自动完成、自动补全功能
- 看 flask 教程中遇到的问题(二)
- muduo Accept
- Android学习 - 小知识(4.0以上版本读写外置sd卡与onCreate、onRestoreInstanceState、onSaveInstanceState三者关系)
- 数组的定义
- 最小生成树_Kruskal.c
- 【深度学习论文笔记】Depth Map Prediction from a Single Image using a Multi-Scale Deep Network