J'essaie de redéfinir les méthodes dynamiques d'un domaine dans groovy. Y a-t-il quelque chose de semblable à alias dans ruby dans groovy?Comment faire un alias de méthode dans groovy?
13
A
Répondre
-1
Je n'ai pas vu ça dans Groovy et je n'y trouve rien.
Une façon d'y parvenir serait la méthode évidente mais médiocre.
def greet(name) {
println "Hello $name"
}
def sayHello(name) {
greet(name)
}
2
Vous pouvez le faire en utilisant metaprogramming:
MyClass.metaClass.aliasMethod = MyClass.metaClass.originalMethod
27
Voulez-vous dire que la méthode opérateur de référence .&
?
def out = System.out.&println
out << "Hello"
et
def greet(name) {
println "Hello $name"
}
def sayHello = this.&greet
sayHello "Ronny"
Il est mentionné à http://groovy.codehaus.org/Operators mais un exemple manque
+0
Cela semble avoir des problèmes lors de l'utilisation des médicaments génériques et le sous-classement. J'ai 'Paire
@rlovtang a répondu à la question ci-dessus – sbglasius