0%

设计模式-简单工厂


简单工厂模式(Simple Factory Pattern):又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。在简单工厂模式中,可以根据参数的不同返回不同类的实例。简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。

Pay.java

1
2
3
public interface Pay {
void pay(Integer money);
}

SimpleFactory.java

1
2
3
4
5
6
7
8
9
10
11
12
13
public class SimpleFactory {

public static Pay create(String payType) {

if (payType.equals("ZFB")) {
return new ZFBPay();
} else if (payType.equals("WX")) {
return new WXPay();
}else {
return null;
}
}
}

WXPay.java

1
2
3
4
5
public class WXPay implements Pay {
public void pay(Integer money) {
System.out.println("微信支付:"+money+"元");
}
}

ZFBPay.java

1
2
3
4
5
public class ZFBPay implements Pay {
public void pay(Integer money) {
System.out.println("支付宝支付:"+money+"元");
}
}

Test.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
/**
* 简单工厂设计模式
*/
public class Test {

public static void main(String[] args) {

Pay wx = SimpleFactory.create("WX");
wx.pay(2);

Pay zfb = SimpleFactory.create("ZFB");
zfb.pay(1);
}
}