As sobrecargas de métodos são muito mais simples do que o imponente nome sugere. Como acabei de falar no tópico anterior sobre métodos construtores, vou aproveitar aquele exemplo e explicar sobrecarga a partir dele.

Sobrecarga de métodos nada mais é do que ter métodos (sejam eles construtores ou não) com o mesmo nome, mas recebendo diferentes argumentos. Vamos aos exemplos práticos. A imagem abaixo mostra o nosso construtor padrão, que não recebe nenhum argumento, vejam:

Sobrecarga

Conforme vimos no tópico sobre Construtores, esse método será chamado sempre que um objeto for criado e, nesse instante inserirá os valores “Branca” e “FIAT” nas propriedades strCor e strMarca, respectivamente.

Agora vamos criar uma sobrecarga para esse método, prevendo uma situação onde nós queiramos informar, já no ato da criação do objeto, qual é sua cor, ou seja, queremos que o objeto já “nasça” com a cor que especificarmos, sem a necessidade de acionar algum método para alterar esse valor posteriormente. Nosso código agora ficará da seguinte forma:

Sobrecarga

Vejam que criei um método com o mesmo nome, mas recebendo um argumento do tipo String. Isso quer dizer que quando chamarmos esse método construtor que recebe o argumento cor, nosso objeto nascerá com a cor que for especificada e com a marca em branco, ou seja, a propriedade strMarca receberá um valor vazio, da mesma forma que acontece quando não criamos um método construtor e o compilador o faz automaticamente.

Vamos criar uma nova sobrecarga, agora recebendo também a marca do carro. Nosso código ficará da seguinte forma:

Sobrecarga

Agora temos um método que recebe, além da cor, também a marca que será inserida no ato da criação do nosso objeto do tipo Carro. Isso é a sobrecarga de métodos. Percebam que é muito simples, mas os mais atentos devem estar se perguntando: “ótimo, mas como o sistema saberá qual dos métodos deverá chamar, já que existirão vários?”. Se você é um deles, parabéns, pois é uma excelente observação.

Vejam, a resposta é tão simples quanto o conceito de Sobrecarga. O sistema saberá qual método chamar de acordo com a quantidade de argumentos que você estiver passando no momento da criação do objeto. Se não passar nenhum argumento, ele chamará o construtor padrão. Se passar apenas um, ele chamará o método de primeira sobrecarga (destacado em verde na imagem acima). Se passar dois, ele chamará o de segunda sobrecarga (azul). E assim por diante. Vejam como o IntelliSense do Visual Studio nos ajuda nesse momento:

Sobrecarga

Colocando a seta para baixo, acessamos a segunda sugestão, conforme imagem abaixo:

Sobrecarga

E como terceira opção temos:

Sobrecarga

Dessa forma podemos saber quantas sobrecargas de métodos existem e como cada uma delas espera receber seus argumentos. De acordo com os argumentos que forem passados é que o sistema chamará o método construtor adequado.

Vale lembrar que fiz estes exemplos com um método construtor, mas você pode utilizar a sobrecarga em quaisquer métodos.

É isso!


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.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

O épico jogo River Raid, do Atari, foi desenhado e boa parte de sua programação foi feita por uma mulher: Carol Shaw, uma excelente programadora e funcionária da Activision em 1982. Saiba mais sobre a história deste incrível jogo, aqui.


O ábaco é o dispositivo de cálculo mais antigo construído e conhecido pelo homem. Suas formas mais primitivas datam de 400 a.C. e eles foram encontrados na China e na Babilônia. Para saber mais sobre a história dos computadores, clique aqui.


A empresa Universal City Studios, detentora dos direitos autorais do King Kong, processou a Nintendo logo após o lançamento de Donkey Kong, pois segundo ela, o game violava os seus direitos. Ela venceu o processo e recebeu da Nintendo uma indenização de quase 2 milhões de dólares.


O título Asteroids, do Atari, possui recorde de pontuação há 30 anos. Em 1982 um americano chamado Scott Safran atingiu a marca de 41.336.440. Atualmente ele faz parte de um minúsculo grupo de jogadores que conseguiram manter seus recordes por mais de 30 anos.


O primeiro computador a conseguir rodar o jogo Spacewar era o PDP-1, que custava 120 mil dólares e pertencia ao Massachusetts Institute of Technology. O jogo demorou 200 horas para ser desenvolvido, em 1962, e seu criador foi um cientista da computação chamado Steve Russel.


Criar um jogo é muito mais complexo do que parece. São milhares, às vezes, milhões de linhas de código. Isso não é exagero! Apenas o jogo Ultima Online possui 6.006.313 linhas de programação, totalizando 25.103.295 palavras


Considerando todas as adaptações de jogos de videogame para o cinema, a mais bem sucedida foi Lara Croft: Tomb Raider, lançado em 2001 e que faturou 274 milhões de dólares. Ele foi dirigido por Simon West e estrelado pela bela Angelina Jolie.