小蔡学Java

Java之设计模式 (十二)

2023-09-22 17:56 1174 0 设计模式 设计模式建造者模式

建造者模式(Builder Pattern)

  Java建造者模式(Builder Pattern)是一种创建型设计模式,它通过将一个复杂的对象的创建过程分解成多个简单的步骤,并将这些步骤封装到一个Builder对象中,从而可以灵活地创建不同的对象 使用场景

  • 当需要创建复杂的对象,并且对象的构建过程包含多个步骤时,可以使用建造者模式

  • 当需要创建不同配置的对象时,可以使用建造者模式。

  • 当需要创建可变的对象时,可以使用建造者模式。

代码实现

public class User {
    private String name;
    private String email;
    private int age;
    
    private User(Builder builder) {
        this.name = builder.name;
        this.email = builder.email;
        this.age = builder.age;
    }
    
    public static class Builder {
        private String name;
        private String email;
        private int age;
        
        public Builder setName(String name) {
            this.name = name;
            return this;
        }
        
        public Builder setEmail(String email) {
            this.email = email;
            return this;
        }
        
        public Builder setAge(int age) {
            this.age = age;
            return this;
        }
        
        public User build() {
            return new User(this);
        }
    }
}

  建造者模式创建User对象

User user = new User.Builder()
    .setName("John")
    .setEmail("john@example.com")
    .setAge(30)
    .build();

使用小结

  • StringBuilder 类就是一个建造者模式的典型应用。它允许使用者逐步构建一个字符串,并最终返回构建好的字符串。

  • Guava 库是一个常用的Java库,其中的 ImmutableList.Builder 类也是一个典型的建造者模式应用。它允许使用者逐步构建一个不可变的列表,并最终返回构建好的列表。

总之,建造者模式在Java中的应用非常广泛,特别是在构建复杂对象时,它可以使构建过程更加灵活、可扩展和可维护。

评论( 0 )

  • 博主 Mr Cai
  • 坐标 河南 信阳
  • 标签 Java、SpringBoot、消息中间件、Web、Code爱好者

文章目录