Minicursos - Programação Orientada a Objetos

Construtores


Construtores são métodos chamados automaticamente sempre que um novo objeto é criado. O principal papel de um construtor é executar uma sequência de comandos que darão valores iniciais ao objeto. Vejam, na imagem abaixo, o exemplo de um método construtor:

Construtores

A primeira observação importante é que os métodos construtores não possuem nenhum tipo de retorno de dado. Apenas relembrando, sempre que criamos uma função que processará alguma informação e enviará um resultado ao término de sua execução, devemos definir o tipo de retorno. Se a função fará um cálculo e retornará um número inteiro, a função deve especificar o tipo "int" em sua estrutura. Se vai retornar uma frase, palavra ou caractere, deve conter o tipo "string" na estrutura, enfim, é preciso que deixemos explícito o tipo de dado que será enviado. Caso ela não retorne nenhuma informação, devemos ainda assim especificar o tipo "void". Nos métodos construtores isso não é necessário, aliás, eles não devem conter esta especificação.

Na imagem acima podemos observar também que a partir da classe Carro, criada no tópico sobre Classes, defini alguns valores padrão para ela, que foram a cor Branca e a marca FIAT. Dessa forma, sempre que o método construtor for chamado e um novo objeto do tipo Carro surgir, ele terá esses dados inseridos automaticamente em seus atributos. Vejamos a execução disso com o seguinte código:

Construtores

Vamos executar esse código e ver se, de fato, os valores que definimos como padrão são inseridos no objeto:

Construtores

Aqui podemos ver que a cor Branca foi realmente inserida e, ao clicar no OK surge a nova caixa de diálogo, conforme imagem abaixo:

Construtores

A imagem acima mostra que nos foi retornada a marca FIAT, que definimos como padrão no método construtor. Claro que esses são apenas os valores criados no “nascimento” do objeto e, conforme citei anteriormente, eles podem ser alterados. Vou chamar o método setCor alterando a cor para Azul, vejam:

Construtores

E executando esse código temos o seguinte retorno:

Construtores

Agora podemos observar que a nova cor realmente é o Azul. Com isso eu gostaria de deixar claro que o papel de método contrutor é criar o objeto e lhe atribuir valores iniciais, mas também é importante destacar que esses valores podem ser (e quase sempre serão) alterados ao longo da execução do programa.

Para encerrar o assunto Construtores, vale ressaltar que sempre que um objeto é criado o método construtor do mesmo é chamado. Bem, mas o que aconteceria se não fizéssemos o método construtor e mesmo assim tentássemos criar um objeto? Vou anular nosso método construtor, deixando o código da seguinte forma:

Construtores

Agora vamos executar o código:

Construtores

Notem que o código foi executado sem nenhum erro mas, quando a execução chega no trecho onde ele deveria mostrar a cor padrão do nosso objeto do tipo Carro, o campo aparece vazio. A primeira impressão que isso pode causar é que os métodos construtores não são essenciais, já que o código foi executado sem problemas e o valor não foi exibido apenas porque não havia nada na propriedade cor do objeto criado.

Bem, na verdade não é bem assim que as coisas acontecem. O C#, que é a linguagem usada nesses testes, é inteligente o suficiente para detectar que a classe Carro não possuía um método construtor, então, no momento da compilação ele cria um por conta própria e define todas as suas propriedades com valores vazios. Se fossem dados numéricos ele atribuiria valores zero como padrão. Então, o que é importante que fique claro é que mesmo que você não defina um método construtor, ele estará presente para inicilizar seu objeto, caso contrário não seria possível executar o código. De qualquer forma, deixar de criar esses métodos contando com o auxílio do compilador não é uma boa prática de programação. Lembre-se de sempre cria-lo, até porque pode haver situações em que os métodos construtores precisem receber parâmetros de inicialização e, nesse caso o compilador não poderá ajudar. Falarei mais sobre isso no próximo tópico.



Algumas notícias

Google Chrome consumirá menos memória RAM em breve

O navegador da gigante de buscas da Internet é, sem dúvida, um dos melhores disponíveis, mas é inegável que o consumo de memória RAM por parte dele é exagerado. Este problema já se estende por anos, mas parece que em breve ele terá uma solução. Um novo recurso do Windows 10, chamado SegmentHeap...

Ler Notícia Completa

Sites e vídeos sem propagandas? Sim, é possível através da exploração de uma falha!

Seguramente você já se deparou com sites que bloqueiam o conteúdo da página e te obrigam a assinar determinado serviço para ler o conteúdo, certo? Ou foi tentar assistir aquele vídeo e as propagandas em tela cheia não pararam de surgir. Bem, todos já nos deparamos com isso, no entanto, um bug de...

Ler Notícia Completa

Inteligência Artificial cria antibiótico super potente

Pesquisadores do MIT (EUA) identificaram um novo e poderoso composto antibiótico usando um algoritmo de aprendizado de máquina, uma técnica de inteligência artificial. Em testes de laboratório, a droga matou algumas das bactérias causadoras de doenças mais problemáticas do mundo, incluindo algu...

Ler Notícia Completa

Google lança programa para capacitar profissionais brasileiros e com direito a bolsas

O Google iniciou nesta terça-feira (17) o Certificado Profissional de Suporte em TI para brasileiros. Trata-se de um curso desenvolvido pela gigante de tecnologia em parceria com a Coursera. Inicialmente, o módulo de ensino foi anunciado a um valor de US$ 39 por mês. Entretanto, sofreu uma redu...

Ler Notícia Completa

Intel Core i9-9900KS é um monstro com frequência de 5GHz em todos os núcleos

A Intel é uma das empresas presentes na Computex 2019, a maior feira de hardware da Ásia. E a empresa começou a esquentar os motores antes mesmo do início das conferências, exibindo um processador que não está para brincadeira: o Intel Core i9-9900KS, uma edição especial e ainda mais turbinada do...

Ler Notícia Completa

Como conversar com alguém no WhatsApp sem adicionar o número aos contatos

Este processo pode, à primeira vista, parecer um pouco confuso para usuários que não são muito experientes usando seu smartphone. Mas uma vez que você conclua o processo , vai entender o método e parecerá mais fácil. 1. Abra o seu navegador preferido no seu smartphone e digite o seguinte link na...

Ler Notícia Completa

O que acontece com o cérebro no exato momento em que morremos

O que passa em nossa cabeça no momento da morte? Não se sabe exatamente e, embora os cientistas tenham alguma resposta, a resposta continua sendo um grande mistério. Além de difícil solução, tentar respondê-la pode criar implicações éticas. No entanto, uma equipe de cientistas da Universidade...

Ler Notícia Completa

Operada e devolvida ao útero, menina que nasceu duas vezes hoje 'acorda sorrindo toda manhã'

Um bebê pode nascer duas vezes? Não é o caso da absoluta maioria das crianças, mas foi assim para a pequena Lynlee Boemer. Em outubro de 2015, sua mãe, Margaret Boemer, descobriu que estava grávida de gêmeos. Ela sofreu um aborto espontâneo, mas um dos bebês sobreviveu. Com dez semanas de ges...

Ler Notícia Completa
Você gostará destes vídeos!