Professional Documents
Culture Documents
LP2
Delphi
Classes
Objetos
Herana
Encapsulamento
Polimorfismo
DELPHI e a POO
Qualificadores de Acesso
Construtores e Destrutores
Implementao de Classes
POO
A Programao Orientada a Objetos baseia-se na definio de
objetos ou classes do mundo real.
Herana: uma classe-objeto pode herdar caractersticas de outra classeobjeto visando a reutilizao de cdigo.
no
pode
ver
detalhes
de
REPRESENTAO DE UM OBJETO
Nome do Objeto
Atributos
Mtodos
Super Classe
Atributos
Mtodos
Classe 1
Classe 2
Atributos
Atributos
Mtodos
Mtodos
Encapsulamento
a capacidade das
classes-objetos de se comunicarem
com outras classes-objetos atravs de
sua interface, independente de sua
implementao interna.
Interface
Objeto 1
Objeto 2
Mensagens
Atributos
Atributos
11
classe
TObject.
me
denominada
Definio
type
TPessoa = class (TObject)
Nome : string;
Endereo : string;
procedure AtualizarDados (Nome, Endereo :
string);
end;
classe = class(superclasse)
private
{declaraes privativas}
protected
{declaraes protegidas}
public
{declaraes pblicas}
end;
type
TPessoa = class (TObject)
private
Nome : string;
Endereo : string;
public
procedure AtualizarDados (Nome,
Endereo : string);
end;
Como nome e endereo sero alterados se esto
como private?
18
21
type
TPessoa = class (TObject)
private
Nome : string;
Endereco : string;
public
procedure AtualizarDados
(Nome, Endereco : string);
protected
constructor Create;
destructor Destroy;
end;
22
23
unit Pessoas;
interface
type
TPessoa = class(TObject)
protected
Nome
: string;
Endereco : string;
constructor Create;
destructor Destroy;
public
procedure AtualizarDados (Nome : string; Endereco : string);
end;
implementation
constructor TPessoa.Create;
begin
inherited Create;
Nome := ;
Endereco := ;
end;
destructor TPessoa.Destroy;
begin
inherited Destroy;
end;
procedure TPessoa.AtualizarDados (Nome : string; Endereco : string);
begin
Self.Nome := Nome;
Self.Endereco := Endereco;
end;
end.
Documento do
Micros oft Word
CONSTRUCTOR
CREATE
No constructor Create podem ser
omitidos as inicializaes dos
atributos. Eles devem aparecer
apenas quando deseja-se inicializar
um atributo com um determinado
valor.
25
26
27