O conceito de herança é um dos mais importantes da programação orientada a objetos. Ele permite que se estenda as classes, gerando herdeiras, que são chamadas de classes-filha ou subclasses.

Vejam a ilustração abaixo, onde temos uma classe chamada Pessoa, uma Aluno e uma Professor.

As classes Aluno e Professor são herdeiras de Pessoa, portanto, nesta ilustração a classe Pessoa é chamada de Superclasse ou classe-pai. As classes Aluno e Professor são chamadas de Subclasses ou classes-filha. Notem que todo aluno e professor também são pessoas, mas nem todas as pessoas são alunos ou professores. Neste exemplo, as classes "Aluno" e "Professor", por serem herdeiras de "Pessoa", também terão "nome", "idade", "e-mail" e "sexo", que são os atributos da superclasse, mas além disso terão outros atributos específicos deles. É exatamente para que não tenhamos que inserir esses atributos comuns em todas as classes, o que geraria repetição de código, que existe a herança. Com ela podemos definir as classes Pessoa e Professor como herdeiras da classe Pessoa, ou seja, como subclasses da superclasse Pessoa. O triângulo ligando a classe Pessoa às outras duas indicam exatamente isso.

Aplicando o modelo da ilustração acima, Aluno será herdeiro de Pessoa, portanto terá nome, idade, e-mail e sexo, mas também terá nro_matricula e curso como atributos. Já Professor terá nome, idade, e-mail e sexo, mas também disciplina e salario. A mesma lógica vale para os métodos.Tanto Professor quanto Aluno terão o método exibeDados, mas Aluno também terá atualizaCurso e apagaMatricula. Já Professor terá o método exibeDados, mas também terá o cadastraAluno.

Vejam que com a herança é possível tornar tudo bastante organizado e com uma enorme reutilização de código das classes, ou seja, o processo de programação fica mais ágil. Vejamos como seria isso na prática. Vamos criar a classe "Pessoa" utilizando o C#.

Herança - Programação Orientada a Objetos (POO)

Agora criarei a classe "Aluno", fazendo-a herdar as características da classe "Pessoa":

Herança - Programação Orientada a Objetos (POO)

Vamos ver na prática isso funcionando. Vou tentar acessar o método exibeDados, presente na classe "Pessoa", mas a partir de um objeto do tipo "Aluno".

Herança - Programação Orientada a Objetos (POO)

Aí está o método exibeDados disponível para uso! Ou seja, de fato a classe "Aluno" herdou as características da classe "Pessoa", já que pode usar os métodos disponíveis apenas nela. Percebam que eu posso manipular todos os atributos da classe "Pessoa" a partir da classe "Aluno". Isso, através da herança, foi possível sem a necessidade de repetir tais argumentos no código. Conforme citei no início deste tópico, é o reaproveitamento de código voltado para as classes. Simples, mas muito útil!


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?

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.


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!


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.


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.


O console Nintendo Entertainment System (NES), da Nintendo, detém o recorde de videogame mais clonado em todo o mundo. Já foram catalogados mais de 300 aparelhos diferentes capazes de reproduzir seus jogos! Saiba mais sobre ele aqui.


A Máquina de Pascal, criada em 1642 pelo filósofo, físico e matemático francês Blaise Pascal, é reconhecida como o primeiro computador do mundo e ele foi criado com o objetivo de calcular impostos. Saiba mais.