Skip to main content
Version: v19 R8 BETA

Class

Quando uma classe de usuário for definida no projeto, é carregada no ambiente da linguagem 4D. Uma classe é um objeto em si mesmo, da classe "Class", que tem propriedades e uma função.

Resumo

.name : Text    contains the name of the 4D. Class object
.new( param : any { ;...paramN } ) : 4D. Class    cria e devolve um objecto cs.className que é uma nova instância da classe em que é chamado
.superclass : 4D. Class    devolve a classe pai da classe

.name

Histórico
VersãoMudanças
v18 R3Adicionado

.name : Text

Descrição

A propriedade .name contains the name of the 4D. Class object. Nomes de classe diferenciam minúsculas de maiúsculas.

Essa propriedade é apenas leitura.

.new()

Histórico
VersãoMudanças
v18 R3Adicionado

.new( param : any { ;...paramN } ) : 4D. Class

ParâmetrosTipoDescrição
paramany->Parâmetros a passar à função constructor
Resultados4D. Class<-Novo objeto da classe

|

Descrição

A função .new() cria e devolve um objecto cs.className que é uma nova instância da classe em que é chamado. Essa função está disponível automaticamente para todas as classes da classe store cs.

Pode passar um ou mais parâmetros opcionais param, que serão passados para a função class constructor (se houver) na definição de classe className. Dentro da função constructor, This é conectado ao novo objeto sendo construído.

Se .new() for chamado em uma classe não existente, um erro é retornado.

Exemplos

Para criar uma nova instância da classe Person:

var $person : cs. Person  
$person:=cs. Person.new() //create the new instance
//$person contains functions of the class

Para criar uma nova instância da classe Person com parâmetros:

//Class: Person.4dm Class constructor($firstname : Text; $lastname : Text; $age : Integer)
This.firstName:=$firstname
This.lastName:=$lastname
This.age:=$age
//In a method
var $person : cs. Person
$person:=cs. Person.new("John";"Doe";40)
//$person.firstName = "John"
//$person.lastName = "Doe"
//$person.age = 40

.superclass

Histórico
VersãoMudanças
v18 R3Adicionado

.superclass : 4D. Class

Descrição

A propriedade .superclass devolve a classe pai da classe. A superclass can be a 4D. Class object, or a cs.className object. Se a classe não tiver uma classe pai, a propriedade retorna null.

Uma superclasse de uma classe de usuário é declarada em uma classe usando a palavra chave Class extends <superclass>.

Essa propriedade é apenas leitura.

Exemplos

$sup:=4D. File.superclass //Document
$sup:=4D. Document.superclass //Object
$sup:=4D. Object.superclass //null

// If you created a MyFile class
// with `Class extends File`
$sup:=cs. MyFile.superclass //File

Ver também: Super