工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式。著名的Jive论坛 ,就大量使用了工厂模式,工厂模式在Java程序系统可以说是随处可见。因为工厂模式就相当于创建实例对象的new,我们经常要根据类Class生成实例对象,如A a=new A() 工厂模式也是用来创建实例对象的,所以以后new时就要多个心眼,是否可以考虑使用工厂模式,虽然这样做,可能多做一些工作,但会给你系统带来更大的可扩展性和尽量少的修改量。
interface Service {
void method1();
void method2();
}
interface ServiceFactory {
Service getService();
}
class ServiceFacotry {
Service getService(){
if (a) {
ServiceA sA = new ServiceA();
} else (b) {
ServiceB sB = new ServiceB();
} else (c) {
ServiceC sC = new ServiceC();
} ...
...
}
}
public static void serviceConsumer(ServiceFactory fact) {
Service s = fact.getService();
s.method1();
s.method2();
}