Minicursos - Programação Orientada a Objetos

Sobrecarga de Métodos


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!



Notícias - Games

Atari VCS é finalmente lançado e surpreende

O Atari VCS foi lançado recentemente e trouxe suporte a praticamente todos os serviços de streaming de jogos já disponíveis. A única exceção foi por conta do Playstation Now, cujo suporte nativo não é oferecido, mas ele pode ser acessado através do modo PC do VCS, já que o console possui Googl...

Ler Notícia Completa

Conheça o Playstation 2 portátil criado por um brasileiro

Claudio Adriano decidiu criar uma versão portátil do console Playstation 2, da Sony. Inspirado no Nintendo Switch, o console ficou pronto depois de 2 anos de trabalho e algumas interessantes adaptações. Partindo de uma placa-mãe de um PS2 Slim, Claudio fez os encaixes necessários para que a pla...

Ler Notícia Completa

PS5 com SSDs não originais apresentam ótimo resultado

A última atualização do PS5 permite que se faça a expansão do armazenamento do console. Embora o aparelho exija características específicas para os dispositivos de expansão, como taxa de leitura de 5Gb/s, ele funciona surpreendentemente bem com SSDs de velocidades inferi...

Ler Notícia Completa

Capcom Pro Tour sofre o cancelamento de algumas etapas por conta do coronavírus

Em um comunicado ao público via redes sociais, a Capcom revelou que algumas etapas do Capcom Pro Tour foram removidas do calendário como precaução contra o surto de coronavírus pelo mundo...

Ler Notícia Completa

Conheça o Stadia: a incrível plataforma de streaming de games do Google

O Google deu o pontapé inicial para o que espera ser o futuro dos videogames: consoles e hardware em geral ficam em segundo plano, e os games rodam em qualquer dispositivo via streaming. A plataforma Stadia promete levar jogos para notebooks, TVs, celulares e muito mais. O projeto do Google se...

Ler Notícia Completa
Ajude o Contém Bits com um cafezinho!

Se você gostou do artigo, se ele lhe foi útil de alguma maneira e você quiser ajudar o Contém Bits, saiba que é simples, fácil e rápido. Basta clicar na imagem do PayPal (ou no cafezinho) e seguir as instruções, em ambiente seguro e com o respaldo do Paypal. Eu agradeço muito! :)


Você gostará destes vídeos!