A sobreposição de métodos é um conceito bastante importante, mas que poucos tiram proveito dele. Vou explicar seu funcionamento com um exemplo, pois ficará mais fácil. Vamos imaginar que o exemplo que citamos anteriormente, no tutorial sobre herança, tenha uma alteração e que agora tenhamos 3 classes herdando da classe Pessoa, conforme ilustração abaixo:
Acrescentei a classe "Diretor", que também herda de Pessoa, mas ela precisa implementar o seu próprio método exibeDados, que é diferente do método exibeDados da classe "Pessoa". Bem, agora temos um problema, pois quando criarmos o objeto "Diretor" e chamarmos o método exibeDados, teoricamente ele pegará o método da superclasse e não nos permitirá chamar o método "local". Para permitir essa modificação no método da superclasse existe a sobreposição de métodos, que nada mais é do que permitir que façamos um método com o mesmo nome do contido na superclasse, mas com funções totalmente diferentes. A forma de fazer isso em C# é bastante fácil, vejam:
O primeiro passo é adicionar, na superclasse, a palavra virtual à sintaxe da criação do método, conforme figura acima. O segundo passo é acrescentar, na subclasse, a palavra override antes do tipo de retorno de dado no método a ser sobrescrito, vejam:
Vamos testar esse código e ver se de fato isso está acontecendo. Adicionei outro botão à aplicação. Um cria um objeto do tipo "Aluno", que é herdeiro da classe "Pessoa", e chama o método exibeDados da superclasse. O outro cria um objeto do tipo "Diretor", que também é herdeiro de "Pessoa", mas este chama um método sobreposicionado. A telinha ficou da seguinte forma:
Vou clicar no botão que carrega o método da Superclasse:
Agora vou dar OK e clicar no botão referente à Subclasse:
Vejam que agora ele ignorou o método da superclasse e carregou o método override.
Essa é a função da sobreposição de métodos. Quando necessário, você poderá ignorar o método de uma superclasse e
criá-lo de maneira diferente na subclasse.
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?
Tomb Raider - O Filme
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.
Final Fantasy
O famoso título Final Fantasy, da Square Enix, tem este nome exatamente porque se tratava da última esperança da empresa, que estava à beira da falência quando o lançou. Clique aqui e conheça detalhes dessa história.
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!
Ultima Online
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
Cuidados com o notebook
Utilizar seu notebook em camas, sofás ou qualquer superfície macia pode obstruir as entradas e saídas de ar, elevando a temperatura e provocando danos a diversos componentes. Utilize-o sempre sobre uma superfície rígida. Saiba mais aqui.
Pac Man
Apenas no ano de 1982, o clássico Pac Man vendeu mais de 400 mil máquinas de fliperama em todo o mundo e recebeu cerca de 7 bilhões de moedas nestas máquinas. Saiba mais.
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.