Rosemary Silveira Filgueiras Melo

Slides:



Advertisements
Apresentações semelhantes
Laboratório de Programação II Método Construtor Dados e Métodos de Objetos Prof Edivaldo - Network.
Advertisements

Paradigmas da Programação – Semestre 1 – Aula 7 Professor: Eduardo Mantovani )
CLASSES EM JAVA Dilvan Moreira (baseado no livro Big Java)
TÉCNICO EM INFORMÁTICA Linguagem e Técnica de Programação III PROF. MARCELO N. SANTOS
PROGRAMAÇÃO ORIENTADA A OBJETOS EM C++ Professor: Dilvan Moreira.
Modelagem Orientada a Objetos com UML Cursos para a CTI - IME/USP Dairton Bassi, Hugo Corbucci e Mariana Bravo Departamento de Ciência.
Atributos e Métodos Restrições de Acesso Encapsulamento Herança.
Programação em Java RMI - Remote Method Invocation Prof. Luiz Antonio Rodrigues Prof. Luiz Antonio Unioeste - Cascavel Jpanel e Diagramadores.
Programação em Java Threads Prof. Luiz Antonio Rodrigues Prof. Luiz Antonio Unioeste - Cascavel Jpanel e Diagramadores.
Respostas dos Exercícios. Lista 1 1.a) Escreva uma função que receba como parâmetro uma temperatura dada em graus Fahrenheit e retorna a temperatura.
Disciplina: Estrutura de Dados Professor: Jeovane Reges Caxias – MA 2015 ACULDADE DE CIÊNCIAS E TECNOLOGIA DO MARANHÃO.
Algoritmos e Programação Prof. Marcos Saúde
Classes Objetos Atributos Métodos Coletor de Lixo (Garbage Collector ) Confraria do Java Nivelamento. Caroline, Marcelo e Luiz 12/05/2007.
Generalização, Especialização e Conceitos Carlos Bazilio Depto de Ciência e Tecnologia Pólo Universitário de Rio das Ostras Universidade Federal Fluminense.
Classe Abstrata É uma classe que não pode ser instanciada; Freqüentemente aparece no topo de uma hierarquia de classes de programação orientada a objetos;
Relacionamentos Avançados do Modelo Entidade-Relacionamento
Polimorfismo e suas aplicações em C++.
Introdução OO.
Análise e Projeto de Sistemas II
Fundamentos de Programação 1
Introdução a Linguagem Java
Módulo I Capítulo 2: IDE e Variáveis
Introdução Java.
PROGRAMAÇÃO ORIENTADA A OBJETO - JAVA
3.1 Classes e Objetos Em um programa orientado a objetos normalmente existem vários objetos de um mesmo tipo. Por exemplo, um programa de controle de.
COM222 DESENVOLVIMENTO DE SISTEMAS WEB
Tema 4 - Modelagem ER: Técnicas e Ferramentas
Projeto de PLP (2006.1) Extensão da Linguagem OO1
Java: Interfaces Alcides Calsavara.
Exercícios SQL – DML Consultas Avançadas
Criação e manipulação de objetos
Unidade IV– Relacionamento entre Objetos
Algoritmos e Estruturas de Dados I
Exercícios Revisão Faça um algoritmo em PHP que receba um valor qualquer e calcule o seu fatorial (!), sabendo que fatorial de um número é: 7! = 7*6*5*4*3*2*1.
Programação Orientada a Objetos
Programação Orientada a Objetos
Técnicas de Programação
Desenvolvimento de Sistemas Orientados a Objetos
Modelagem de Objetos de Domínio com Diagrama de Classes
Técnicas de Programação
Elaborando as Interfaces Aulas 37, 38 e 39.
Wrappers.
Programação Orientada a Objetos*
Programação Orientada a Objetos*
3.2 Sobrecarga de Métodos (Overloading)
Rosemary Silveira Filgueiras Melo
Rosemary Silveira Filgueiras Melo
Programação Orientada a Objetos
3.1.7 Variáveis de Classe e Instância
Programação Orientada a Objetos
Laboratório I Mateus Raeder.
Laboratório I Mateus Raeder.
Prof.: Bruno Rafael de Oliveira Rodrigues
Laboratório I Mateus Raeder.
Rosemary Silveira Filgueiras Melo
Curso básico de PHP. 1 Vantagens: Gratuito Multiplataforma Estável Rapidez Comunicação.
Programação Funcional
Aula Prática Objeto-Relacional Monitoria GDI
Introdução C# e Net.Framework
Modelagem Entidade-Relacionamento (MER)
Paradigma de Orientação a Objetos
Leitura do teclado e Interface gráfica
Tipos Primitivos de Dados
UML Prof. Marcio Ferreira 1 29.
RESULUÇÃO DOS EXERCÍCIOS,
Programação Orientada a Objetos
Constantes, Variáveis e Memória
Estruturas Condicionais
JAVA - BÁSICO COL. ESTADUAL MARIA AGUIAR TEIXEIRA
Programação de Computadores II
Transcrição da apresentação:

Rosemary Silveira Filgueiras Melo rosesfmelo@hotmail.com Linguagem Java Rosemary Silveira Filgueiras Melo rosesfmelo@hotmail.com Polimorfismo

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.

Exemplo Um Analista "é um" funcionário funcionario.calcSalario() gerente.calcSalario() secretaria.calcSalario() analista.calcSalario()

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.

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(); }

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.

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.

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.