Instituto Federal de Mato Grosso do Sul Campus Aquidauana
Tecnólogo em Sistemas Para Internet
O. O.
Orientação a Objetos Demais Conceitos
Disciplina: Orientação a Objetos
Prof. Me. Pedro Henrique Neves da Silva pedro.silva@ifms.edu.br
Técnico em Informática
Relembrando
• O que é a OO?
Classe
Classe
Exemplo de Classe
Classes – Notação UML
Exemplo de Classes
Outros Conceitos
• Existem alguns conceitos básicos que estão vinculados ao conceito de orientação a objetos. São eles :
➔Encapsulamento
➔Herança
➔Polimorfismo
Encapsulamento
Exemplo sem usar o
Encapsulamento
Exemplo utilizando o
Encapsulamento
Herança
• A herança é uma das principais características
das linguagens de programação orientadas a
objetos, permite o reaproveitamento de
métodos e atributos diminuindo o tempo de
desenvolvimento, ainda reduz as linhas de
código desta forma facilita as manutenções
futuras.
Herança
• A utilização da herança é mais que uma
simples economia de código, significa mais
integridade. Quando um comportamento é
alterado, todas as classes que descende dela
terá acesso aos métodos atualizados sem
necessidade de reprogramação.
Exemplo - Herança
Exemplo Herança
Polimorfismo
• Traduzindo, do grego, ao pé da letra, polimorfismo significa "muitas formas".
• Essas formas, em nosso contexto de programação, são as subclasses/objetos criados a partir de uma classe maior, mais geral, ou abstrata.
• Polimorfismo é a capacidade que o Java nos dá de controlar todas as formas de uma maneira mais simples e geral, sem ter que se preocupar com cada objeto especificamente.
Exemplo de Polimorfismo
• Imagine que você é o criador do joguinho Colheita feliz onde terá vários bichos nesse jogo.
• Será necessário abstrair e criar uma classe "Animal" com as características que todos tem: idade, peso, espécie etc.
• Porém, nesse game, os animais fazem seu som característico: o cachorro late, o gato mia, o pinto pia, a vaca muge etc.
• E aí? Como criar um método na superclasse que sirva para todos estes animais?
• Ora, não cria, pois cada animal age diferente nesse aspecto.
Exemplo de Polimorfismo
• Veja, polimorfismo é isso: embora objetos sejam da mesma superclasse, vão agir de maneira diferente em algum aspecto.
• Ou seja, terão várias(poli) formas diferentes
(morfismo).
Exemplo de Polimorfismo
• A saída é criar um método chamado 'som()' na superclasse e em cada subclasse criar um método diferente, que caracterize cada bicho.
• Veja que se não fizéssemos isso e invocássemos os métodos:
vaca.som(), cachorro.som(), gato.som(), todos iriam fazer o mesmo barulho.
• Com o polimorfismo: vaca.som() faria a vaquinha mugir, cachorro.som() faria o cachorro latir e gato.som() faria o objeto miar.
• Porém, todos continuam sendo, também, objetos da classe
"Animal".