我使用Factory模式来隐藏一些实例创建的复杂性。 我有这样的:如何使用反射来建立通用的子类型?
class FooInt extends Foo<int>;
我想做的事:
class<Foo<?>> fooType = FooInt.class;
所有派生类型的Foo有一个构造函数取两个参数。所以,我需要使用反射来创建子类型的实例:
Constructor<Foo<?>> ctor = fooType.getContructor(Blah.class, Blahblah.class);
return ctor.newInstance(blah, blahblah);
但javac的说:
"Type mismatch: cannot convert from Class<FooInt> to Class<Foo<?>>"
我在做什么错?这样可以使用反射吗?
不,这导致“语法错误令牌‘延伸’......” – retrodrone 2011-04-01 15:03:15
@Gnat - 你是对的 – Ralph 2011-04-01 15:06:09