我有创建的对象在单元测试中使用的工厂方法。这些对象都来自同一个基类派生:在Java中,我可以从一个Class对象的匿名子类的实例?
public static <T extends BaseEntity> T modMake(Class<T> clazz)
{
try {
return clazz.newInstance();
} catch (InstantiationException e) {
// Should never happen
throw new AssertionError(e);
} catch (IllegalAccessException e) {
// Should never happen
throw new AssertionError(e);
}
}
现在我要重写从基类的getter方法,但只是为了测试。我通常会做与一个匿名类,例如(Node
是的BaseEntity
的subtaypes之一):
public static Node nodMake()
{
return new Node() {
@Override
public long ixGet() { return 1; }
};
}
我可以这样做,在使用Class
说法,过于功能?
有趣。我还没有像这样使用过Java。 – 2009-08-20 15:30:15
我现在实际上在使用EasyMock,它很有趣。谢谢! – 2009-10-09 10:02:33