public class Product { private String attribute1; private String attribute2; public void setAttribute1(String value) { this.attribute1 = value; } public void setAttribute2(String value) { this.attribute2 = value; } // other methods } public interface Builder { void buildAttribute1(String value); void buildAttribute2(String value); Product getProduct(); } public class ConcreteBuilder implements Builder { private Product product; public ConcreteBuilder() { this.product = new Product(); } public void buildAttribute1(String value) { this.product.setAttribute1(value); } public void buildAttribute2(String value) { this.product.setAttribute2(value); } public Product getProduct() { return this.product; } } public class Director { private Builder builder; public Director(Builder builder) { this.builder = builder; } public void construct() { builder.buildAttribute1("value1"); builder.buildAttribute2("value2"); } } public class Main { public static void main(String[] args) { Builder builder = new ConcreteBuilder(); Director director = new Director(builder); director.construct(); Product product = builder.getProduct(); // ... } }


上一篇:
下一篇:
切换中文