码迷,mamicode.com
首页 > 其他好文 > 详细

创建者模式

时间:2016-03-30 19:21:38      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:

相对于 抽象工厂模式,创建者模式在处理 ”工厂“ 生产的 ”产品“ 关系之间更加灵活。

例子:(参照 抽象工厂模式 那一篇的例子代码)

新定义工厂类(“工厂” 不再处理 ”产品“ 的 联系了)

1 public abstract class Factory {
2  public abstract Translate getTranslate();
3  public abstract Understand getUnderstand();
4   
5 }

创建者类:(处理这个联系)

 1  public class Director {
 2     private Factory factory;
 3 
 4     public Factory getFactory() {
 5         return factory;
 6 
 7     }
 8 
 9     public void setFactory(Factory factory) {
10         this.factory = factory;
11     }
12 
13     public void doSomething(String txt) {
14         Translate translate = this.factory.getTranslate();
15         Understand understand = this.factory.getUnderstand();
16         translate.say(txt);
17         understand.doUnderstand(txt);
18     }
19 }

客户端调用类

 1 public interface Client {
 2     public static void main(String[] args) {
 3         /* 创建者模式,相对于抽象工厂模式,多组有联系的 “生产过程” 拼接 更加 的灵活 */
 4         Director director = new Director();
 5         director.setFactory(new EnglishFactory());
 6         director.doSomething("test");
 7         director.setFactory(new ChineseFactory());
 8         director.doSomething("测试");
 9     }
10 }

 

创建者模式

标签:

原文地址:http://www.cnblogs.com/ChuangZhang/p/5338356.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!