以下是Java中使用一个类实现建造者模式的示例代码:

public class Pizza {
    
    private String crustType;
    private String sauceType;
    private List<String> toppings;
    
    private Pizza(Builder builder) {
        this.crustType = builder.crustType;
        this.sauceType = builder.sauceType;
        this.toppings = builder.toppings;
    }
    
    public String getCrustType() {
        return crustType;
    }
    
    public String getSauceType() {
        return sauceType;
    }
    
    public List<String> getToppings() {
        return toppings;
    }
    
    public static class Builder {
        
        private String crustType;
        private String sauceType;
        private List<String> toppings = new ArrayList<>();
        
        public Builder crust(String crustType) {
            this.crustType = crustType;
            return this;
        }
        
        public Builder sauce(String sauceType) {
            this.sauceType = sauceType;
            return this;
        }
        
        public Builder toppings(List<String> toppings) {
            this.toppings.addAll(toppings);
            return this;
        }
        
        public Pizza build() {
            return new Pizza(this);
        }
    }
}

在上面的代码中,Pizza类包含一个私有构造函数和一个嵌套的Builder类。Builder类包含与Pizza类中的属性相同的属性,并提供了用于设置这些属性的方法。Builder类还包含一个名为build()的方法,该方法使用Builder的实例来创建一个新的Pizza对象。

以下是如何使用Pizza类和Builder类创建Pizza对象的示例代码:

Pizza pizza = new Pizza.Builder()
                    .crust("Thin")
                    .sauce("Tomato")
                    .toppings(Arrays.asList("Cheese", "Pepperoni", "Mushrooms"))
                    .build();

在上面的示例中,我们使用Builder类的方法来设置Pizza对象的属性,并最终使用build()方法创建Pizza对象。

java用一个类实现建造者模式

原文地址: https://www.cveoy.top/t/topic/bnx5 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录