建造者模式
创建者模式又叫建造者模式,是将一个复杂的对象的构建与它的表示分离,使
得同样的构建过程可以创建不同的表示。创建者模式隐藏了复杂对象的创建过程,它把复杂对象的创建过程加以抽象,通过子类继承或者重载的方式,动态的创建具有复合属性的对象。
建造者模式接上代码,要使用可以直接套格式:
/**
*
* 建造者模式
* 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
* */
public class BuilderPattern {
private String language;
private String name;
public BuilderPattern(Builder builder){
this.language = builder.language;
this.name = builder.name;
}
//方法逻辑
public void showInfo() {
System.out.println("name:"+name);
System.out.println("language:"+language);
}
//Builder 建造者
public static class Builder{
private String language = "";
private String name = "";
public Builder(){
}
//每次设置参数返回自己方便之后继续设置参数
public Builder setLanguage(String language){
this.language = language;
return this;
}
//每次设置参数返回自己方便之后继续设置参数
public Builder setName(String name){
this.name = name;
return this;
}
//创建BuilderPattern实例
public BuilderPattern create(){
return new BuilderPattern(this);
}
}
}
Client类
public class Client {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//使用BuilderPattern
new BuilderPattern.Builder().setLanguage("c++").create().showInfo();
new BuilderPattern.Builder().setName("java").setName("BuilderPattern").create().showInfo();
}
}