SóProvas


ID
2323
Banca
NCE-UFRJ
Órgão
TRE-RJ
Ano
2001
Provas
Disciplina
Engenharia de Software
Assuntos

O conceito de polimorfismo em Orientação a Objetos implica:

Alternativas
Comentários
  • Suponha a seguinte classe escrita em Java:

    public abstract class OperacaoMatematica {
    public abstract double calcular(double x, double y);
    }

    Esta é uma classe abstrata que representa qualquer operação matemática. Podemos imaginar diversas operações que se encaixam na sua interface, como soma, subtração, multiplicação ou divisão, entre outras. Note que, mesmo que a natureza do cálculo mude, a semântica do método calcular não muda, ou seja, ele sempre calculará o resultado da operação matemática que está sendo trabalhada.

    Definamos então, duas subclasses, Soma e Subtracao, que implementam a classe OperacaoMatematica:

    public class Soma extends OperacaoMatematica {
    public double calcular(double x, double y) {
    return x+y;
    }
    }

    public class Subtracao extends OperacaoMatematica {
    public double calcular(double x, double y) {
    return x-y;
    }
    }

    O seguinte trecho de código demonstra o uso do polimorfismo:

    public class Contas {
    public static void mostrarCalculo(OperacaoMatematica operacao, double x, double y) {
    system.out.println("O resultado é: " + operacao.calcular(x, y));
    }

    public static void main(String args[]) {
    //Primeiro calculamos uma soma
    Contas.mostrarCalculo(new Soma(), 5, 5); //Imprime o resultado é: 10
    Contas.mostrarCalculo(new Subtracao(), 5, 5); //Imprime o resultado é: 0
    }
    }

    Note que, embora o método calcular tenha sido chamado duas vezes no interior de mostrarCalculo, o comportamento apresentado variou de acordo com a classe ao qual ele representava no momento. É comum definir sobrecarga de métodos ou simplesmente sobrecarga como uma forma de polimorfismo embora esta definição deixe lacunas conceituais.
  • Essa aula é do Microsoft Office 2010, não corresponde ao título do vídeo "Libre Office Writer".

  • Vídeo repetido! :(

  • Vídeo repetido! :(

  • Olá administradores do QC, o vídeo em questão não corresponde ao vídeo disponibilizado.
    Grato pela atenção!

  • Não é a aula do Writer.

  •  b) trabalhar com instâncias de classes diferentes, de forma unificada, via uma abstração;

  • b)

    Ha uma extensao da herança da hierarquia de classes na qual mais métodos com distintas interfaces hierárquicas sao chamados primeiro em runtime; é neste momento que um dos metodos sera usado consoante o objeto.

  • Polimorfismo permite a manipulação de instâncias de classes que herdam de uma mesma classe ancestral de forma unificada: Podemos escrever métodos que recebam instancias de uma classe C, e os mesmos métodos serão capazes de processar instancias de qualquer classe que herde a classe C, já que qualquer classe que herde C é-um-tipo-de-C. Questão retirado do Livro: Introdução à programação orientada a objetos usando java 2ª edição