A POO é um paradigma de programação que se propõe a abordar o design de um sistema em termos de entidades, os objetos, e relacionamentos entre essas entidades que possuem características (os atributos) e responsabilidades (as funções) e estabelecer relações entre esses objetos. Ela tem quatro pilares principais: Abstração, Polimorfirmos, Herança e Encapsulamento.
Sobre o conceito de Polimorfismo do paradigma Orientação à Objetos, analise as afirmações e assinale a CORRETA
Alternativas
Alternativa 1:
O polimorfismo refere-se à característica de uma classe poder herdar os atributos e métodos de outra classe, tornando-se uma classe mais especializada.
Alternativa 2:
Com o polimorfismo é possível que uma variável de um tipo mais genérico (abstrato) referencie um objeto de um tipo mais específico na sua hierarquia de classes.
Alternativa 3:
Com o polimorfismo, é possível a criação de métodos onde os parâmetros são sempre passados por cópia, independentemente se são tipos primitivos ou objetos.
Alternativa 4:
O polimorfismo restringe que os tipos das variáveis que armazenam um determinado objeto sejam explicitamente do mesmo tipo do objeto, não permitindo generalizações.
Alternativa 5:
Refere-se à propriedade de somente tornar visível as informações importantes para o contexto da aplicação, enquanto as demais ficam disponíveis somente no escopo da classe.
Soluções para a tarefa
Resposta: Alternativa 2
Explicação:
Apesar da questão está bastante genérica e apresentar margem para interpretação diversas é possível inferir que a alterativa 2 é a mais correta porque por meio do polimorfismo (múltiplas formas), há uma especialização nas subclasses com acesso direto as variáveis da classe genérica, mais abstrata.
Resposta: alternativa 1.
Explicação: a intenção de utilizar polimorfismo é aproveitar a estrutura de uma classe base (atributos e funções) provida por alguma forma de herança ou contrato, com a vantagem de poder especificar (reescrever) o retorno de suas funções desde que respeite o contrato (assinatura) da classe base.
Eg. Classe Animal tem função comer.
Classe Ave herda : Classe Animal.
Logo Ave pode reescrever a função comer para declarar que o Animal Ave come frutas e grãos (dessa forma podemos especificar a generalização contida na classe base).