创建者模式又叫建造者模式,是将一个复杂的对象的构建与它的表示分离,使 得同样的构建过程可以创建不同的表示。创建者模式隐藏了复杂对象的创建过程,它把复杂对象的创建过程加以抽象,通过子类继承或者重载的方式,动态的创建具有复合属性的对象。
建造者模式接上代码,要使用可以直接套格式:
/** * * 建造者模式 * 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 * */ 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(); } }