这是我的代码
@Typed class FooMap extends LinkedHashMap {
def doSomeFoo() {
// ...
}
FooMap plus(Collection coll) {
super.plus(coll)
}
}
虽然它在普通的 Groovy 中工作,但使用 Groovy++ 编译它会产生错误:Cannot reference default groovy method 'plus' using 'super'. Call the static method instead
. 如果它是 Groovy++ 中的错误,或者它应该以这种方式工作,我不知道。无论如何,我想以super
打字的方式打电话。我该如何解决这种情况?
我想要这种方法的原因是我希望这段代码能够编译。
FooMap map = new FooMap() + [bar: 42]
map.doSomeFoo()