0
我试图在Java应用程序中嵌入POGO。我想用POGO用一些虚拟数据实例化POJO进行测试。我认为这将是可能的POGO延长POJO,并像在这个例子中命名的参数调用POJO的构造函数:使用命名参数调用父构造函数
的Java类:
public class Pojo {
private String name;
...
}
Groovy类:
class Pogo extends Pojo {
Pogo() {
super(name: 'test name')
}
}
试图通过从JUnit测试实例化的Pogo
@Test
public void shouldInitPojoWithTestData() {
Pojo p = new Pogo();
assertNotNull(p);
assertEquals("test name", p.getName());
}
失败
groovy.lang.GroovyRuntimeException: Could not find matching constructor for: Pojo(java.util.LinkedHashMap)
然而,实例名为参数POJO Groovy脚本中正常工作:
def p = new Pojo(name: 'test name')
assert p.name == 'test name' // OK
为什么我不能调用与命名参数的父类的构造?
Thx
感谢您的回答! – MartinKnopf