我试图在groovy中重新定义域的动态方法。在groovy的ruby中是否有类似的别名方法?
答案 0 :(得分:30)
你的意思是方法引用运算符.&
?
def out = System.out.&println
out << "Hello"
和
def greet(name) {
println "Hello $name"
}
def sayHello = this.&greet
sayHello "Ronny"
在http://groovy.codehaus.org/Operators提及,但缺少一个例子
答案 1 :(得分:3)
您可以使用metaprogramming执行此操作:
MyClass.metaClass.aliasMethod = MyClass.metaClass.originalMethod
答案 2 :(得分:-1)
我还没有在Groovy中看到这个,也找不到任何关于它的内容。
实现目标的一种方法是明显但不好的方式。
def greet(name) {
println "Hello $name"
}
def sayHello(name) {
greet(name)
}