Understanding Constructors and Destructors in Programming
100 likes | 189 Vues
Explore the concepts of constructors and destructors in programming, their types, usage, characteristics, and examples. Learn how constructors initialize objects and destructors release allocated resources.
Understanding Constructors and Destructors in Programming
E N D
Presentation Transcript
Construtores e Destrutores Marco Antonio Montebello Júnior marco.antonio@aes.edu.br Paradigmas de Programação
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 = newObjeto(); • Alguns podem requerer parâmetros • Objeto obj = newObjeto(35, "Nome"); Paradigmas de Programação
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
ConstrutoresCaracterí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
ConstrutoresExemplo class Cliente { int codigo; string nome; //Construtor public Cliente() { } } Paradigmas de Programação
ConstrutoresExemplo class Cliente { int codigo; string nome; //Construtor public Cliente(int cod, string nom) { codigo = cod; nome = nom; } } Paradigmas de Programação
ConstrutoresExemplo class Cliente { int codigo; string nome; //Construtores public Cliente() { } public Cliente(int cod, string nom) { codigo = cod; nome = nom; } } Paradigmas de Programação
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
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
Destrutores class Cliente { int codigo; string nome; //Destrutor ~Cliente() { //Codigo implementado para limpeza } } Paradigmas de Programação