我有一个工厂,我喜欢使用吉斯重新实现:实现参数化工厂吉斯
enum MyObjects { OBJECT1, OBJECT2, ... }
class Object1 implements SomeInterface { ... }
class Object2 implements SomeInterface { ... }
...
class Factory {
public static SomeInterface createObject(MyObjects obj) {
switch (obj) {
case OBJECT1: return new Object1();
case OBJECT2: return new Object2();
...
}
}
有没有实现它的简单方法? 像Provider.get(参数)和使用绑定来定义在每种情况下应该使用哪个对象?
感谢您的答复,你可以使用工厂英寸 据我所知,第一个选项在编译时更为合适,实际的类是已知的,而第二个选项允许在运行时决定使用哪个实现。 – 2011-06-20 12:35:11