我注意到我可以调用没有.
符号的方法,但我在文档中找不到任何关于它的信息。你能告诉我它是如何工作的或者指向文档吗?
static void main(String[] args) {
def person = new Person()
person.setName "Socrates" setAge 20
}
class Person {
Person setName (name) {
return this
}
Person setAge (age) {
return this
}
}
1条答案
按热度按时间vyu0f0g11#
这是一个专门用于编写您自己的领域特定语言的功能。链接的方法调用可以转换成类似句子的语法。
关于Groovy DSL docs:
“命令链”功能扩展了这一点,允许我们链接这种无括号的方法调用,既不需要参数周围的括号,也不需要链接调用之间的点。
示例(来自文档):
示例(来自谈话 *Groovy:The Awesome Parts(Paul King):
这里有一个简单的例子,如何做到这一点:
指纹