[CursoPOO01 - Aula 09] - Herança



Introdução

Um dos pilares da Orientação a Objetos é a herança. O nome não poderia ser mais apropriado, herança claro remete ao verbo herdar. Ação realizada quando recebemos algum bem de alguém que tem alguma relação conosco.

Nesta aula iremos discutir como funciona o mecanismo de herança entre classes, veremos alguns exemplos de como utilizar na linguagem de programação. Além disso, compreenderemos como ele pode auxiliar na abstração do mundo.




     1-    O que é herança?

Herança é um mecanismo utilizado na Orientação a Objetos para generalizar e especificar um objeto. No mundo real podemos entender como a expressão “é um”. Observe o exemplo:

Exemplo 1:

Um carro tem essencialmente os mesmos componentes para seu funcionamento, por exemplo: motor, rodas, lanternas, para brisa, bancos, volante, etc. Assim temos uma ideia formada do que é um carro.

Apesar de todos os carros obedecerem este projeto inicial, sabemos que os carros não são todos iguais. Existem especificidades, marcas, modelos, montadoras. Acima podemos ver o Camaro, carro feito pela Chevrolet e ele É UM tipo de carro.

Muitos objetos podem ser generalizados ou especificados de acordo com a necessidade de abstração.

     2-    Como funciona a abstração?

A abstração sempre busca deixar para o objeto PAI ou SUPERCLASSE as características que todas as especificações terão em comum. Já as especificações terão apenas as suas especificidades. Acompanhe o Exemplo 2:

Exemplo 2

Um macaco é um primata que sabemos ter: Uma cabeça, dois olhos, duas orelhas, uma boca, etc. Estas são características que podem ser abstraídas para todos os macacos. Logo esta será a SUPERCLASSE.



Porém, cada macaco tem sua espécie. Uns crescem mais outros menos, têm dietas diferentes, vivem em lugares diferentes. Sendo assim, características como cor dos olhos, tamanho, cor do pelo é comum a todos os macacos. Porém, alguns macacos possuem a habilidade de utilizar pedras para abrir frutos para se alimentar, esta habilidade pode ser considerada uma especificação.

      3-    Como representar herança em Java?

Vamos trabalhar agora um exemplo bastante clássico ao ilustrar herança, a famosa classe “Pessoa”. Pela lógica evidente no mundo real uma pessoa pode ter várias funções, uma delas é ser um estudante. É valido dizer que um aluno É UMA pessoa, observe o exemplo em Java:

public class Pessoa{
               public String nome;   
               public int idade;
}

Esta classe possui os atributos nome e idade. Estes atributos são comuns a todas as pessoas. Veja agora como podemos criar uma classe Aluno que herda estes atributos da classe Pessoa e inclui seu próprio atributo, a saber, seu número de matrícula.

public class Aluno extends Pessoa{
            public String matricula;
}

Observe que, em Java, a palavra-chave usada para indicar herança é extends. A classe Aluno agora possui três atributos: nome, idade e matricula.

      4-    Porque usar Herança?

Resumindo em apenas uma palavra a motivação para se utilizar herança: reaproveitamento. Reaproveitar código é fundamental, os programadores não devem escrever instruções repetidas vezes em um software.

Uma classe, quando criada, deve sempre pensar que ela deve ser coesa o bastante para ser estendida por qualquer programador. Esta possibilidade deixa o código mais fácil de realizar manutenção e de ser reaproveitado em outros softwares.



Quer fazer download dessa aula?




[CursoPOO01 - Aula 09] - Herança [CursoPOO01 - Aula 09] - Herança Reviewed by Vinicius dos Santos on 17:46:00 Rating: 5

Nenhum comentário

Escreve ai sua opinião!