设计模式--工厂方法模式--简记

时间:2021-01-15 20:14:36

工厂方法模式:

  创建一个工厂接口和创建多个工厂实现类。

  当需要增加多个功能时,直接增加新的工厂类就可以了,不需要修改之前的代码。

 1 //创建共同接口
 2 public interface Sender {
 3     public void send();
 4 }
 5 
 6 //两个实现类
 7 public class MailSender implements Sender {
 8     @override
 9     public void send() {
10         System.out.println("Send Mial");
11     }
12 }
13 
14 
15 public class SmsSender implements Sender {
16     @override
17     public void send() {
18         System.out.println("Sms Mial");
19     }
20 }
21 
22 
23 //创建一个工厂接口
24 public interface Factory {
25     public Sender produce();
26 }
27 
28 
29 //两个工厂类
30 public class SendMailFactory implements Factory {
31     @override
32     public Sender produce() {
33         return new MailSender();
34     }
35 }
36 
37 
38 public class SendSmsFactory implements Factory {
39     @override
40     public Sender produce() {
41         return new SmsSender();
42     }
43 }

 

好处:便于新增功能,而无需更改之前的代码。

比如:新增一个发送及时信息的功能,只需要写一个实现类,实现Sender接口,再写一个工厂类,实现Provide接口就可以了,拓展性较好。