public class Person { private Person(Builder builder) { name = builder.name; age = builder.age; } private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public static Builder builder() { return new Builder(); } public static class Builder { private String name; private int age; public Builder name(String name) { this.name = name; return this; } public Builder age(int age) { this.age = age; return this; } public Person build() { return new Person(this); } } }
測試一下
public static void main(String[] args) { Person p = Person.builder().name("hehe").age(3).build(); System.out.println(p); }