我不记得是不是一个常见的模式,但是我有一个类(工厂方法模式),该类具有根据枚举参数创建其他类的方法(抽象工厂模式):
public class FooFactoryFactory {
public FooFactory createFactory (FooFactoryType type) {
switch (type) {
case AFoo:
return new AFooFactory ();
break;
case BFoo:
return new BFooFactory ();
break;
default:
throw new RuntimeException ("...");
}
}
}
public interface FooFactory {
Foo createFoo ();
FooItem createFooItem ();
}
FooFactory具有几种实现以及Foo接口和FooItem接口(通用的Abstract Factory模式)。
那么,如何重命名FooFactoryFactory?
也许是FooFactoryCreator?(在写这个问题时要想起这个名字)。恕我直言,这很好,您如何看待?
FooFactoryCreator
FooFactoryProvider
但是您可能想将工厂重命名为建筑商。看一下javax.xml.parsers.DocumentBuilderFactory
,它DocumentBuilder
会产生实例,而实例又会产生Document
s
查看DocumentBuilderFactory
示例,出现了另一个选择:
FooFactory
static newInstance()
那里做一个方法(带参数)newInstance()
返回适当的实现FooFactory
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句