我一直在尝试通过在POGO中定义一个自定义putAt
方法来利用operator overloading in Groovy,如下所示:
class Book {
Map additionalInfo = [:]
def putAt(key, value) {
additionalInfo[key] = value
}
}
这样我就可以做类似
book['notes'] = 'I like this one.'
的事情(假设这很有意义)。但是,我得到了:groovy.lang.MissingPropertyException: No such property: notes for class: Book
at BookSpec.Set property using putAt(BookSpec.groovy:40)
我的类(class)是Grails应用程序的一部分,所以我不确定Grails是否与问题有关。有人可以启发我吗?
最佳答案
签名应为
def putAt(String key, value)
关于grails - 为什么覆盖putAt会导致MissingPropertyException?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28678643/