Person person = new Person.Builder(1, "张三")
.age(18).sex("男").desc("测试使用builder模式").build();
Android源码中的Builder模式
AlertDialog源码
Universal-Image-Loader图片库
OkHttp的Request源码
优点:
良好的封装性,使用建造者模式可以使客户端不比知道产品内部组成的细节
建造者独立,容易扩展(可通过抽象———接口,抽象类)
缺点:
会产生多余的Builder对象以及Director对象,消耗内存
总结 :Builder模式通常作为配置类的构建器将配置的构建和表示分离开来,同时也是将配置从目标类中隔离出来,避免过多的setter方法。
您可能感兴趣的文章: