- Construtores
- Destruidores
- Polimorfismo
- Classes Abstratas
Construtores
*Regra: Todo objeto instanciado deve ser inicializado antes de ser executado
*Construtor: É o método da classe que é chamado automaticamente no momento da instanciação do objeto.
*Serve para inicializar os atributos do objeto para evitar inconsistência nos dados.
Destrutores:
* Assim como é necessário inicializar os atributos de um objeto, pode ser necessário destruí-los.
* Um Destrutor é indicado automaticamente sempre que um objeto é liberado da memória.
* Usado para desalocar recursos atualizados pelo objeto
( Create vai no inicio, após Begin, e quando definido destructor, irá no final antes do END )
Polimorfismo
*Capacidade de assumir várias formas diferentes.
*Em orientação a objetos significa que uma mesma operação pode ser definida por diversas classes, cada um implementando a operação de uma maneira própria.
*Polimorfismo permite que o programador acesse um método de um objeto sem saber exatamente de qual classe específica o método esta sendo acessado.
TFIGURA = CLASS
BEGIN
PROCEDURE DESENHAR;
END;
TCIRCULO=CLASS(TFIGURA)
PUBLIC
PROCEDURE=DESENHAR;
TTRIANGULO=CLASS(TRIANGULO)
PUBLIC
PROCEDURE DESENHAR;
END;
VAR
FIGURA:TFIGURA;
BEGIN
FIGURA:=TCIRCULO.CREATE;
FIGURA.DESENHAR;
FIGURA.FREE;
END.
Sobreposição ( Override ).
Métodos com a mesma declaração que são, sobrescritos ( substituídos ) em uma herança por exemplo, um método declarado na superclasses, se referindo na subclasse, é substituído por fase em tempo de execução.
- Sobrecarga ( Overload )
Métodos com mesmo nome em uma classe podem executar operações de maneiras destintas, isto é, permitido pela diferenciação na passagem de parâmetros.
Public
Procedure desenhar (raio.integer); overload;
Procedure desenhar(largura,altura:integer); overload;
Procedure desenhar(raio:integer); overload; x //não pode ser igual ao primeiro|
Procedure desenhar(raio: real); overload;
Nenhum comentário:
Postar um comentário