当方法来自接口时,Groovy重写方法失败

时间:2017-07-11 15:15:25

标签: java groovy

在ExpandoMetaClass的帮助下在groovy中添加或覆盖任何方法都很有效,直到我试图覆盖的方法不会覆盖接口方法。以下代码的输出为mew, I am hungry,但我希望它为mew-mew。我做错了什么?

interface Cat {
   String mew()
}
class Barsik implements Cat {
   String mew(){ "mew, I am hungry" }
}

Barsik.metaClass.mew = {->
   "mew-mew"
}

Cat barsik = new Barsik()
println(barsik.mew())

0 个答案:

没有答案