建造者模式

本文章,摘抄自:2018黑马程序最新面试题汇总

工厂类模式提供的是创建单个类的模式,而建造者模式则是将各种产品集中起来进行管理,用来创建复合对象,
所谓复合对象就是指某个类具有不同的属性,其实建造者模式就是前面抽象工厂模式和最后的 Test 结合起来得到的。

 1 public interface ISender {
 2 
 3     public void Send();
 4 }
 5 
 6 public class MailSender implements ISender {
 7 
 8     @Override
 9     public void Send() {
10         System.out.println("this is mail sender");
11     }
12 
13 }
14 
15 public class SmsSender implements ISender {
16 
17     @Override
18     public void Send() {
19         System.out.println("this is sms sender");
20     }
21 
22 }
 1 import cn.silence.face.designmode.factory.common.ISender;
 2 import cn.silence.face.designmode.factory.common.MailSender;
 3 import cn.silence.face.designmode.factory.common.SmsSender;
 4 
 5 public class Builder {
 6     private List<ISender> list = new ArrayList<>();
 7 
 8     public void produceMailSender(int count) {
 9         for (int i = 0; i < count; i++) {
10             list.add(new MailSender());
11         }
12     }
13 
14     public void produceSmsSender(int count) {
15         for (int i = 0; i < count; i++) {
16             list.add(new SmsSender());
17         }
18     }
19 
20 }

测试方法:

1 @Test
2     public void testBuilder() {
3         Builder builder = new Builder();
4         builder.produceMailSender(10);
5     }
原文地址:https://www.cnblogs.com/ffeiyang/p/9542597.html