Buscar

Prévia do material em texto

Resumo
Nesta aula vimos os principais conceitos que diferenciam a linguagem orien-
tada a objetos das demais linguagens de programação (herança, polimorfis-
mo e outros). Vimos que o principal benefício da herança é a reutilização de 
código. A herança permite ao programador criar uma nova classe progra-
mando somente as diferenças existentes na subclasse em relação à super-
classe. Isso se ajusta bem à forma como compreendemos o mundo real, no 
qual conseguimos identificar naturalmente essas relações.
Pudemos compreender que o termo polimorfismo origina-se do grego e 
quer dizer “o que possui várias formas”. Em programação está relacionado 
à possibilidade de se usar o mesmo nome para métodos diferentes e à ca-
pacidade que o programa tem em discernir, dentre os métodos homônimos, 
aquele que deve ser executado. Vimos também os dois tipos de polimorfis-
mo: estático e dinâmico.
Aprendemos ainda como criar objetos de subclasse e como utilizar o método 
final e a classe final.
Atividades de aprendizagem
1. Criar uma estrutura hierárquica que contenha as seguintes classes: Veícu-
lo (classe abstrata), Bicicleta e Automóvel. Os métodos da classe Veículo 
são todos abstratos e possuem a seguinte assinatura:
•	 listarVerificacoes()
•	 ajustar()
•	 limpar()
Estes métodos são implementados nas subclasses Automóvel e Bicicleta. 
Acrescentar na classe Automóvel o método mudarOleo()
2. Seria possível evitar completamente a necessidade de sobreposição de 
métodos criando métodos em classes descendentes que tenham assi-
naturas diferentes. Por exemplo, a classe Pessoa poderia ter o método 
imprimePessoa para imprimir seus campos, e a classe Aluno, que estende 
a classe Pessoa, poderia ter o método imprimeAluno para imprimir seus 
campos. Que vantagens e desvantagens esta abordagem teria sobre a 
sobreposição de métodos ? 
Introdução à Programação Orientada a Objetose-Tec Brasil 116
3. Explique, com suas palavras, por que construtores de superclasses não 
são herdados por subclasses.
4. Crie uma classe Equipamento com dois atributos privados.
5. Crie uma classe Computador com dois atributos à sua escolha. A classe 
Computador deverá herdar tudo da classe Equipamento.
6. Crie os métodos de acesso e de modificação para todos os atributos de-
finidos em ambas as classes.
7. Crie uma classe TestaEquipamento, com o método main, crie nela um 
objeto da classe Equipamento e instancie os dois atributos que você de-
clarou na classe Equipamento. Crie também um objeto da classe Compu-
tador, utilizando os dois atributos declarados na própria classe e os dois 
herdados da classe Equipamento.
8. O método main deve exibir as informações dos dois objetos criados.
Poste no AVEA as soluções das questões.
e-Tec BrasilAula 6 – Reutilização de classes 117

Mais conteúdos dessa disciplina