验证码: 看不清楚,换一张 查询 注册会员,免验证
  • {{ basic.site_slogan }}
  • 打开微信扫一扫,
    您还可以在这里找到我们哟

    关注我们

Builder模式在Java中的实现步骤

阅读:876 来源:乙速云 作者:代码code

Builder模式在Java中的实现步骤

Builder模式是一种创建型设计模式,它允许你一步一步地构建复杂的对象。以下是在Java中实现Builder模式的步骤:

1. 定义产品类

首先,定义一个包含多个属性的产品类。

public class Product {
    private String partA;
    private String partB;
    private String partC;

    // 私有构造函数,只能通过Builder创建
    private Product(Builder builder) {
        this.partA = builder.partA;
        this.partB = builder.partB;
        this.partC = builder.partC;
    }

    // Getter方法
    public String getPartA() {
        return partA;
    }

    public String getPartB() {
        return partB;
    }

    public String getPartC() {
        return partC;
    }

    @Override
    public String toString() {
        return "Product{" +
                "partA='" + partA + ''' +
                ", partB='" + partB + ''' +
                ", partC='" + partC + ''' +
                '}';
    }

    // 静态内部Builder类
    public static class Builder {
        // 必填参数
        private final String partA;
        private final String partB;
        // 可选参数,默认值
        private String partC = "DefaultC";

        public Builder(String partA, String partB) {
            this.partA = partA;
            this.partB = partB;
        }

        public Builder partC(String partC) {
            this.partC = partC;
            return this;
        }

        public Product build() {
            return new Product(this);
        }
    }
}

2. 使用Builder创建对象

通过Builder类来创建产品对象。

public class BuilderPatternDemo {
    public static void main(String[] args) {
        Product product = new Product.Builder("PartAValue", "PartBValue")
                .partC("CustomCValue")
                .build();

        System.out.println(product);
    }
}

3. 运行程序

运行BuilderPatternDemo类,你会看到如下输出:

Product{partA='PartAValue', partB='PartBValue', partC='CustomCValue'}

关键点总结

  1. 产品类:定义一个包含多个属性的产品类,并提供一个私有的构造函数,该构造函数接受一个Builder对象。
  2. Builder类:作为产品类的静态内部类,包含与产品类相同的属性。Builder类提供一个构造函数来设置必填参数,并提供方法来设置可选参数。最后,提供一个build()方法来创建产品对象。
  3. 使用Builder:通过Builder类的链式调用来设置属性,并最终调用build()方法创建产品对象。

Builder模式适用于创建复杂对象,特别是当对象的构建过程非常复杂或者需要多个步骤时。它使得代码更加清晰和易于维护。

分享到:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: hlamps#outlook.com (#换成@)。
相关文章
{{ v.title }}
{{ v.description||(cleanHtml(v.content)).substr(0,100)+'···' }}
你可能感兴趣
推荐阅读 更多>