Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouGuilherme Francisco Galvão Gomes Alterado mais de 5 anos atrás
1
Rosemary Silveira Filgueiras Melo rosesfmelo@hotmail.com
Linguagem Java Rosemary Silveira Filgueiras Melo Polimorfismo
2
Polimorfismo Polimorfismo (“muitas formas”) é uma das principais características das linguagens orientada a objetos. princípio pelo qual duas ou mais classes derivadas de uma mesma superclasse podem invocar métodos que têm a mesma identificação (assinatura) mas com comportamentos distintos. definido também como a criação de MÉTODOS com um mesmo nome, mas com códigos diferentes. Exemplo: a redefinição de um método para uma subclasse. O método da subclasse terá a mesma assinatura da superclasse mas implementação diferente.
3
Exemplo Um Analista "é um" funcionário funcionario.calcSalario()
gerente.calcSalario() secretaria.calcSalario() analista.calcSalario()
4
Polimorfismo Este conceito permite a solicitação de um serviço a um objeto, cuja execução vai depender do tipo de objeto instanciado. Exemplo: Suponha que existam três classes disponíveis numa biblioteca: Linha, Retângulo e Circulo. Todas elas possuem um serviço ou método chamado desenhar() com os mesmo parâmetros de entrada e saída. Como primeiro passo, devemos instanciar os objetos l, r e c das classes Linha, Retangulo e Circulo, respectivamente. Depois invocamos o método desenhar() desses objetos. Os resultados seriam uma linha, um retângulo e um círculo.
5
Polimorfismo public class CriaObjetoGeometrico
Instancia Objeto do tipo Linha l.Desenhar() Instancia Objeto do tipo Retângulo r.Desenhar() Instancia Objeto do tipo Circulo c.Desenhar() Objeto l (Linha) r (Retângulo) c (Circulo) public class CriaObjetoGeometrico { public static void main(String args[]) { Linha l = new Linha(11) ; Retangulo r= new Retangulo(6); Circulo c = new Circulo(9); l.Desenhar(); r.Desenhar(); c.Desenhar(); }
6
Exercício Crie as seguintes classes e seus respectivos atributos considerando o conceito de herança e polimorfismo: Funcionário: matrícula e nome; Aluno: matrícula, nome e quantidade de horas cursadas; Professor: código, nome e carga horária; Implemente estas classes utilizando o conceito de herança Implemente o método polimórfico Imprimir() em todas estas classes, em cada classe ele deve exibir seus atributos correspondentes. Este método deve retornar os atributos da classe em uma única String.
7
Exemplo public class ConcessionariaDeAutomoveis
{ public static void main(String args[]) { Automovel a1 = new Automovel("Fiat","bege", Automovel.movidoAAlcool); AutomovelBasico a2 = new AutomovelBasico("Corsa","cinza", Automovel.movidoAGasolina); imprime(a1); imprime(a2); } public static void imprime(Automovel a) { System.out.println(“Dados do automóvel escolhido : "); System.out.println(a.toString()); System.out.println("Valor : "+a.quantoCusta()); System.out.println(a.quantasPrestacoes()+" prestações de "+ (a.quantoCusta()/a.quantasPrestacoes())); O método imprime recebe um objeto da classe Automovel como parâmetro. Observe que nesse exemplo, chamamos o método passando a1 e a2, ou seja, objetos de classes diferentes mas da mesma hierarquia de classes, caracterizando dessa forma a utilização de polimorfismo.
8
Exercício Considere uma empresa que deseja fazer o cadastro de seus funcionários. Sabe-se que toda pessoa que de alguma forma se relaciona com a empresa deve registrar seu nome e rg. Os funcionários possuem também o cargo e o salário registrado. Construir uma estrutura de classes utilizando herança para o cenário acima e implementá-la em Java. Construir um método toString para retornar os dados da pessoa e do funcionário. Acrescentar ao modelo acima uma classe visitante, que herda de pessoa e possui também o telefone da pessoa. Implementar o método toString para esta nova classe. Construir uma classe Aplicação que possui um método imprime para imprimir os dados de uma pessoa, seja ela um funcionário ou visitante.
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.