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!



Algumas notícias

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

Médicos dizem estar perto de chegar a exame de sangue para todos os tipos de câncer

Cientistas dizem que estão mais perto de criar um exame de sangue universal, capaz de identificar todos os tipos de câncer. Estudo conduzido com 1.005 pacientes por uma equipe da Universidade Johns Hopkins, dos Estados Unidos, testou um método que detecta oito tipos de proteínas e 16 mutações ge...

Ler Notícia Completa

Formato JPEG está com os dias contados

Há quantos anos você ouve falar em arquivos JPG? O formato já era utilizado nos primórdios da web comercial nos anos 1990, vivendo há mais de 20 anos como o principal método de compressão de imagens do público. No que depender de Google, Mozilla e outras empresas, isso pode mudar dentro de algum...

Ler Notícia Completa

EUA aprovam 'droga viva', 1ª terapia contra câncer que reestrutura sistema imunológico do paciente

Os Estados Unidos aprovaram o primeiro tratamento que reestrutura o sistema imunológico do paciente para atacar o câncer. A agência reguladora de medicamentos do país - a FDA - diz que a decisão foi um momento "histórico" e que a medicina agora "entra em uma nova fronteira". A companhia Novar...

Ler Notícia Completa

Cientistas norte-americanos criaram anticorpo capaz de atacar 99% das variações de HIV

Um grupo formado por pesquisadores do Instituto Nacional de Saúde (NIH), dos Estados Unidos, e da empresa farmacêutica Sanofi criaram em laboratório anticorpos superdesenvolvidos capazes de atacar 99% das cepas de HIV. O feito é ainda mais significativo por ser capaz até mesmo de prevenir a infec...

Ler Notícia Completa

Facebook investirá mais de US$ 1 bilhão em conteúdo original em 2018

Anunciada em agosto, a plataforma original de vídeos do Facebook, Watch, parece ser a grande aposta de Mark Zuckerberg para o ano que vem. De acordo com o TechCrunch, a empresa deve investir US$ 1 bilhão para criar e incentivar iniciativas voltadas para a produção de conteúdo audiovisual exclu...

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