Á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
O mecanismo de herança em TLPP permite que uma nova classe herde propriedades e métodos de uma classe base.
Por motivos de analogia do conceito, assumida em muitas literaturas e documentações, quem herda é chamada de "classe filha" e quem oferece uma base é chamada de "classe pai".
Em TLPP, não há herança múltipla, ou seja, uma classe filha poderá ter apenas uma classe pai.

Importante ressaltar que a classe pai poderá ser uma classe escrita em TLPP, Advpl ou ainda uma classe nativa oferecida pelo próprio servidor de aplicação.
Utiliza-se a palavra reservada "From" para definir uma nova herança de classes.



Bloco de código
languagecpp
firstline1
titleUma classe filha "Circle" herdando a classe pai "Point". Ambas escritas em TLPP.
#include "tlpp_core_dev.th"

Class Point
   private data x as numeric
   private data y as numeric
   public method New(x, y)
   public method getX() as numeric
   public mehtod getY() as numeric
EndClass

Class Circle From Point
   private data r as numeric
   public method New(x, y, r)
   public method draw()
EndClass
Bloco de código
languagecpp
firstline1
titleimplementando os métodos (veja que o nome da classe sempre é mencionado)Uma classe filha "Circle" herdando a classe pai "Point". Ambas escritas em TLPP.
#include "tlpp_core_dev.th"

Class MyClassPoint
   private data nValuex as numeric
   private data cValuey as character
 numeric
   public method New(x, y)
   public method getNumbergetX() as numeric
   public methodmehtod getTextgetY() as character
   public method setNumber(n)
   public method setText(c)numeric
EndClass
 
Class 
Method New() class MyClass
Return Self
 
 
Method getNumber()Circle From Point
   private data r as numeric class
 MyClass
Return nValue
 
public 
Methodmethod getTextNew()x, as character class MyClass
Return cValue
 
 
Method setNumber(n) class MyClassy, r)
   ::nValue := n
Return
 
 
Method setText(c) class MyClass
   ::cValue := c
Returnpublic method draw()
EndClass