构建器事例
People类
public class People {
private final int id;
private final int age;
private final String name;
private final String addr;
public static class Builder{
private final int id;
private final String name;
private int age = 0;
private String addr = "";
public Builder(int id, String name) {
this.id = id;
this.name = name;
}
public Builder age(int val){
age = val;
return this;
}
public Builder addr(String val){
addr = val;
return this;
}
public People build(){
return new People(this);
}
}
private People(Builder builder) {
this.id = builder.id;
this.age = builder.age;
this.name = builder.name;
this.addr = builder.addr;
}
public int getId() {
return id;
}
public int getAge() {
return age;
}
public String getName() {
return name;
}
public String getAddr() {
return addr;
}
}
使用
public class HollerWord {
public static void main(String[] args) {
//多个参数是使用构建器
People p = new People.Builder(1, "张三").addr("北京").age(12).build();
System.out.println(p.getAddr());
}
}