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:
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:
Vamos executar esse código e ver se, de fato, os valores que definimos como padrão são inseridos no objeto:
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:
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:
E executando esse código temos o seguinte retorno:
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:
Agora vamos executar o código:
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 criá-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.
HARDWARE
Entendendo o seu computador
O que há dentro do meu computador?
Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.
Você Sabia?
Nintendo Wii
Nos primeiros oito dias após o lançamento do console Nintendo Wii foram vendidas 600 mil unidades. Isso equivale a quase um por segundo e estes incríveis números são referentes às vendas apenas nos EUA!
Space Invaders
O título Space Invaders, lançado em 1980, fez tanto sucesso em todo o mundo que as pessoas compravam o console Atari apenas para poderem jogá-lo em casa. Saiba mais sobre este incrível título clicando aqui.
Street Fighter 2
Street Fighter 2, lançado para o Super Nintendo no início dos anos 90, foi o principal responsável pelo aumento nas vendas deste console. Graças ao sucesso do título nos Arcades e à perfeita adaptação ao console, muitos consumidores adquiriram o SNES para jogarem o título em casa. Saiba mais.
Civilization
A empresa Take-Two pagou à Infogrames mais de 22 milhões de dólares pelos direitos de Civilization, em novembro de 1994. Ainda sobre este título, Sid Meier, um dos seus fundadores, é o profissional da área dos games mais premiado em todo o mundo.
Muitos aplicativos
Instalar vários aplicativos com o mesmo propósito, como editores de texto, reprodutores de músicas ou vídeos e até programas antívirus sobrecarregam o seu sistema operacional e ainda ocupam espaço desnecessário em seu HD. Tenha apenas um bom programa para cada função.
Space Invaders
A partida mais longa do clássico Space Invaders durou incríveis 38 horas e 32 minutos e esta façanha foi conseguida por um jogador de apenas 12 anos! O jogo, claro, podia ser pausado para alimentação e descanso, mas ainda assim o recorde, estabelecido no dia 02/09/1980, ainda não foi quebrado. Saiba mais.
Mario em Donkey Kong
O personagem Mario surgiu pela primeira vez no mundo dos games em um jogo chamado Donkey Kong, lançado em 1981. Mario, que naquela época se chamava Jumpman, não era o personagem principal do jogo, mas ele se tornaria um dos mais famosos personagens do mundo dos games. Saiba mais.
Tetris
Desde o seu lançamento, em 1985, o fantástico jogo Tetris vende pelo menos 70 milhões de unidades por ano em todo o mundo! Os dados são oficiais e fornecidos pela THQ, uma das distribuidoras do título.