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

设计模式--build设计模式

时间:2015-04-19 13:04:12      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:

BUILDER?MM最爱听的就是“我爱你”这句话了,见到不同地方的MM,要能够用她们的方言跟她说这句话哦,我有一个多种语言翻译机,上面每种语言都有一个按键,见到MM我只要按对应的键,它就能够用相应的语言说出“我爱你”这句话了,国外的MM也可以轻松搞掂,这就是我的“我爱你”builder。(这一定比美军在伊拉克用的翻译机好卖)   建造模式:将产品的内部表象和产品的生成过程分割开来,从而使一个建造过程生成具有不同的内部表象的产品对象。建造模式使得产品内部表象可以独立的变化,客户不必知道产品内部组成的细节。建造模式可以强制实行一种分步骤进行的建造过程。

 

I love you(英语)

あなたのことが好きです(日语)

????(韩语)

请不要问我怎么会说这么多种语言

好吧,我要用设计模式实现它:

首先声明一个抽象类:

 

package com.soyoungboy.builder;

public abstract class Builder {
    abstract String getString();
}

 

  

package com.soyoungboy.builder;

public class Director {
    
    private Builder builder;
    
   
    public Director(Builder builder) {
        this.builder = builder;
    }
    
    
    public  String construct(){
        return builder.getString();
    }
    
}

  

 

package com.soyoungboy.builder;

public class EnglishBuild extends Builder {
    
    @Override
    String getString() {
        return " I Love You";
        
    }
    
}

  

package com.soyoungboy.builder;

public class JapaneseBuild  extends Builder{


    @Override
    String getString() {
        return "あなたのことが好きです";
        
    }

}

  

package com.soyoungboy.builder;

public class KoreanBuild extends Builder {
    
    
    @Override
    String getString() {
        return "????";
        
    }
    
}

  

package com.soyoungboy.builder;

public class Main {
    
    public static void main(String[] args) {
        Builder builder = new EnglishBuild();
        Director d = new Director(builder); 
        String love = d.construct();
        System.out.println(love);
        
        
        Builder builder1 = new JapaneseBuild();
        Director d1 = new Director(builder1); 
        String love1 = d1.construct();
        System.out.println(love1);
        
        Builder builder2 = new KoreanBuild();
        Director d2 = new Director(builder2); 
        String love2 = d2.construct();
        System.out.println(love2);
        
    }
    
}

  

运行结果为:

 I Love You
あなたのことが好きです
????

 

设计模式--build设计模式

标签:

原文地址:http://www.cnblogs.com/androidsuperman/p/4438818.html

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