Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Estado
subtletrue
colourGreen
titletlpp - language

Composition Setup
import.css=/download/attachments/327912/newLayout.css
Portuguese
Section
A implementação de uma classe em TLPP deve seguir as seguintes etapas:

1.  incluir arquivo de cabeçalho tlpp-objectcore.th
2.  definir o nome da classe
3.  declarar propriedades
4.  declarar métodos
5.  implementar os métodos



Bloco de código
languagecpp
firstline1
title
faça
começando com o include
#include "tlpp-
object
core.th" 



class EscopeMethod private data oComp1 public data oComp2 protected data oComp3 data oComp4 public method new() private method teste1() public method teste2() protected method teste3() endclass method new() class EscopeMethod return self method teste1() class EscopeMethod conout("teste1") return self method teste2() class EscopeMethod self:oComp1 := 1 self:oComp2 := 2 self:oComp3 := 3 self:teste1() conout("teste2") self:teste3() return self method teste3() class EscopeMethod conout("teste3") return self user function escope local myObj := EscopeMethod():New() myObj:oComp2 := 2 conout("myObj:oComp2", myObj:oComp2) /*myObj:oComp1 := 1 conout("myObj:oComp1", myObj:oComp1)*/ //não é possível descomentar esse trecho de código pois o atributo oComp1 é private e causará um erro de execução. /*myObj:oComp3 := 3 conout("myObj:oComp3", myObj:oComp3)*/ //não é possível descomentar esse trecho de código pois o atributo oComp3 é protected e causará um erro de execução. //myObj:teste1() - não é possível descomentar esse trecho de código pois o método teste1 é private e causará um erro de execução. myObj:teste2() //myObj:teste3() - não é possível descomentar esse trecho de código pois o método teste3 é protected e causará um erro de execução. return
Bloco de código
languagecpp
firstline1
titlefaça o include
criando uma classe chamada MyClass
#include "tlpp-core.th"

Class MyClass
EndClass
Bloco de código
languagecpp
firstline1
titleinserindo duas propriedades: nValue e cValue
#include "tlpp-core.th"
Class MyClass
   private data nValue as numeric
   private data cValue as character
EndClass



Bloco de código
languagecpp
firstline1
titleinserindo métodos: construtor New e outros quatro de acesso às propriedades
#include "tlpp-core.th"
Class MyClass
   private data nValue as numeric
   private data cValue as character

   public method New()
   public method getNumber() as numeric
   public method getText() as character
   public method setNumber(n)
   public method setText(c)
EndClass
Bloco de código
languagecpp
firstline1
titleimplementando os métodos (veja que o nome da classe sempre é mencionado)
#include "tlpp-core.th"

Class MyClass
   private data nValue as numeric
   private data cValue as character
 
   public method New()
   public method getNumber() as numeric
   public method getText() as character
   public method setNumber(n)
   public method setText(c)
EndClass
 
Method New() class MyClass
Return Self
 
Method getNumber() as numeric class MyClass
Return ::nValue
 
Method getText() as character class MyClass
Return ::cValue
 
Method setNumber(n) class MyClass
   ::nValue := n
Return
  
Method setText(c) class MyClass
   ::cValue := c
Return