Construtores e
Destrutores
Paradigmas de Programação
Marco Antonio Montebello Júnior
[email protected]
Construtores

Construtores são procedimentos realizados na
construção de objetos




Parecem métodos, mas não têm tipo de retorno e têm nome
idêntico ao nome da classe
Não fazem parte da definição do tipo do objeto (interface)
Nem sempre aparecem explícitos em uma classe: podem ser
omitidos (o sistema oferece uma implementação padrão)
Para cada objeto, o construtor é chamado exatamente
uma vez (durante sua criação)

Exemplo:


Objeto obj = new Objeto();
Alguns podem requerer parâmetros

Objeto obj = new Objeto(35, "Nome");
Paradigmas de Programação
2
Construtores

Implícitos



São aqueles que não são declarados dentro do
código da classe, porém são chamados no momento
da instanciação.
A linguagem se encarrega de iniciar os atributos da
classe com os valores padrões adequados aos seus
tipos.
Explícitos

São construtores declarados dentro do código da
classe e que têm a finalidade de iniciar os atributos
com valores diferentes dos padrões ou realizar
determinadas tarefas no momento em que o objeto é
criado.
Paradigmas de Programação
3
Construtores
Características






É o primeiro método executado por um objeto.
Deve ter o mesmo nome da classe.
Não pode ter um tipo de retorno.
É utilizado quando um objeto é instanciado
através do operador new
Na maioria das vezes é declarado como public
Ele é responsável por alocar memória
Paradigmas de Programação
4
Construtores
Exemplo
class Cliente
{
int codigo;
string nome;
//Construtor
public Cliente()
{
}
}
Paradigmas de Programação
5
Construtores
Exemplo
class Cliente
{
int codigo;
string nome;
//Construtor
public Cliente(int cod, string nom)
{
codigo = cod;
nome = nom;
}
}
Paradigmas de Programação
6
Construtores
Exemplo
class Cliente
{
int codigo;
string nome;
//Construtores
public Cliente()
{
}
public Cliente(int cod, string nom)
{
codigo = cod;
nome = nom;
}
}
Paradigmas de Programação
7
Destrutores

Assim como os construtores, são métodos
especiais que liberam os recursos alocados pelo
objeto

São executados quando o garbage collector
elimina um objeto da memória
Paradigmas de Programação
8
Destrutores




Só pode existir um destrutor por classe
Não podem ser chamados são executados
automaticamente
Não possuem modificadores de acesso (public,
private) e não recebem parâmetros
Não utilizar destrutores vazios em C#

O mesmo gera um processamento desnecessário
Paradigmas de Programação
9
Destrutores
class Cliente
{
int codigo;
string nome;
//Destrutor
~Cliente()
{
//Codigo implementado para limpeza
}
}
Paradigmas de Programação
10
Download

construtores - Objetivo Sorocaba