Pagetitle |
---|
| Classe Attribute |
---|
| Classe Attribute |
---|
|
Classe que representa atributos presentes em determinada Classe Propriedades Inclusão de trecho |
---|
| Classe Attribute - Propriedades |
---|
| Classe Attribute - Propriedades |
---|
nopanel | true |
---|
|
Métodos Inclusão de trecho |
---|
| Classe Attribute - Métodos |
---|
| Classe Attribute - Métodos |
---|
nopanel | true |
---|
|
Exemplos Bloco de código |
---|
language | cpp |
---|
theme | Eclipse |
---|
title | Exemplo1.tlpp |
---|
linenumbers | true |
---|
| //Definicoes das annotation, deve estar num fonte
#include "tlpp-object.th"
@annotation classe
@end
@annotation attr
@end
@classe()
Class NovaClasse
@attr()
Public Data TesteAttr as char
Public Method MetodoTeste()
Public Method New(str)
endclass
Method New(str) class NovaClasse
::TesteAttr := str
return self
Method MetodoTeste() class NovaClasse
Conout(::TesteAttr)
return "Banana"
Main Function testeNovo()
local AttrA
local obj1 := NovaClasse():New("Instancia 1")
local obj2 := NovaClasse():New("Instancia 2")
Conout("-----------------------")
AttrA := Reflection.getAttributesByAnnotation(obj1, "attr")
Conout(AttrA[1]:GetValue(obj1))
AttrA[1]:Assign(obj1, "Banana1")
Conout(AttrA[1]:cAttributeName)
Conout(AttrA[1]:cAttributeType)
Conout(obj1:TesteAttr)
Conout("-----------------------")
Conout("-----------------------")
AttrA := Reflection.getAttributesByAnnotation(obj2, "attr")
Conout(AttrA[1]:GetValue(obj2))
AttrA[1]:Assign(obj2, "Banana2")
Conout(AttrA[1]:cAttributeName)
Conout(AttrA[1]:cAttributeType)
Conout(obj2:TesteAttr)
Conout("-----------------------")
return |
Retorno do exemploInstancia executada: Instancia 1 Nome do Metodo: METODOTESTE Retorno do metodo: Banana Instancia executada: Instancia 2 Nome do Metodo: METODOTESTE Retorno do metodo: Banana Nome do Metodo: METODOTESTECOMPARAMETROS ----------------------------------- Instancia: Instancia 1 ParametrosTESTEATTR parametro 1CHAR parametro 2Banana1 ----------------------------------- Retorno do metodo: Banana Nome do Metodo: METODOTESTECOMPARAMETROS ----------------------------------- Instancia: Instancia 2 ParametrosTESTEATTR parametro 1CHAR parametro 2 ------------Banana2 ----------------------- Retorno do metodo: Banana Observações: Disponível a partir da build 17.3.0.7. |