示例:Java Builder 模式实现一个简单的类

发布时间:2025-01-23 19:48:39 作者:小樊
来源:亿速云 阅读:88

在 Java 中,Builder 模式是一种创建型设计模式,它允许你以灵活且可读的方式构建复杂对象。以下是一个使用 Builder 模式实现的简单类示例:

首先,我们创建一个名为 Person 的类,该类具有多个属性:

public class Person {
    private String firstName;
    private String lastName;
    private int age;
    private String address;

    private Person(Builder builder) {
        this.firstName = builder.firstName;
        this.lastName = builder.lastName;
        this.age = builder.age;
        this.address = builder.address;
    }

    public String getFirstName() {
        return firstName;
    }

    public String getLastName() {
        return lastName;
    }

    public int getAge() {
        return age;
    }

    public String getAddress() {
        return address;
    }

    public static class Builder {
        private String firstName;
        private String lastName;
        private int age;
        private String address;

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

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

        public Builder setAge(int age) {
            this.age = age;
            return this;
        }

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

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

在这个例子中,我们使用了一个嵌套的静态类 Builder 来构建 Person 类的实例。Builder 类具有与 Person 类相同的属性,并为每个属性提供了设置方法。每个设置方法都返回 Builder 实例本身,以便我们可以使用链式调用。

要使用 Builder 模式创建一个 Person 对象,我们可以这样做:

public class Main {
    public static void main(String[] args) {
        Person person = new Person.Builder()
                .setFirstName("John")
                .setLastName("Doe")
                .setAge(30)
                .setAddress("123 Main St")
                .build();

        System.out.println("First Name: " + person.getFirstName());
        System.out.println("Last Name: " + person.getLastName());
        System.out.println("Age: " + person.getAge());
        System.out.println("Address: " + person.getAddress());
    }
}

这个例子展示了如何使用 Builder 模式创建一个 Person 对象,并通过链式调用设置其属性。这种方式使得对象的创建过程更加灵活和可读。

推荐阅读:
  1. Java Builder模式实现原理及优缺点解析
  2. 详解java构建者模式Builder

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

java

上一篇:Java Builder 模式如何提高代码可读性

下一篇:Java Builder 模式中的 Builder 接口如何定义

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》