创建的东西细节复杂,还必须暴露给使用者。屏蔽过程而不屏蔽细节
/*** 抽象建造者*/public abstract class AbstractBuilder {Phone phone;abstract AbstractBuilder customCpu(String cpu);abstract AbstractBuilder customMem(String mem);abstract AbstractBuilder customDisk(String disk);abstract AbstractBuilder customCam(String cam);Phone getProduct(){return phone;}}
使用场景
- StringBuilder:append(); 给谁append呢?
- Swagger-ApiBuilder: 快速实现。
- Lombok-Builder模式
