这是模式使用lambok插件即可,不需要自己实现,在实体类添加@Builder注解即可,代码示例:
@Builder
public class Rocket {
private String name;
private Engine engine;
@Override
public String toString() {
return "Rocket{" +
"name='" + name + '\'' +
", engine=" + engine +
'}';
}
}
@Builder
public class Engine {
private String name;
@Override
public String toString() {
return "Engine{" +
"name='" + name + '\'' +
'}';
}
}
public class Demo {
public static void main(String[] args) {
Rocket rocket = Rocket.builder()
.name("火箭")
.engine(Engine.builder()
.name("发动机")
.build())
.build();
System.out.println(rocket);
}
}