Consulta sobre MetaClass
13/12/2013 14:44
Olá amigos
Porque o ordem da criação importante?
Trabalha - Forma I
class Persona{}
Persona.metaClass.getNombre = {'Manuel'}
def persona = new Persona()
println persona.nombre
Não trabalha - Forma II
class Persona{}
def persona = new Persona()
Persona.metaClass.getNombre = {'Manuel'}
println persona.nombre
Eu posso pensar até aqui mesmo que eu devo primeiramente trabalhar com metaClass e obrigatoriamente depois criar a "variavel de instância"
Mas, observe o seguinte
Trabalha - Forma III
class Persona{}
Persona.metaClass.getNombre = {'Manuel'}
def persona = new Persona()
println persona.nombre
Persona.metaClass.getApellido = {'Jordan'}
println persona.apellido
Então Eu posso depois de criar a variavel de instância, outra linha trabalhando com metaClass
Porque a segunda forma ñao trabalha? Eu não entendo…
Obrigado por sua ajuda
Tags:
Metaclass Groovy