Sobre orientação a objetos, considere: I. A relação de hera...
I. A relação de herança permite modelar as similaridades inerentes a uma classe e também as diferenças especializadas que distinguem uma classe de outra.
II. Objetos com os mesmos atributos e operações possuem a mesma identidade, podendo ser referenciados por outros objetos.
III. A possibilidade de uma operação ter o mesmo nome, diferentes assinaturas e possivelmente diferentes semânticas dentro de uma mesma classe ou de diferentes classes é chamada de polimorfismo.
Está correto o que se afirma em
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa Correta: B - I e III, apenas.
Para resolver essa questão, é importante ter um conhecimento sólido sobre os fundamentos da programação orientada a objetos (POO). A programação orientada a objetos é um paradigma de programação baseado no conceito de "objetos", que podem conter dados, na forma de campos, frequentemente conhecidos como atributos; e código, na forma de procedimentos, frequentemente conhecidos como métodos.
Afirmativa I: Correta. A relação de herança é um dos pilares da orientação a objetos e permite que uma classe herde atributos e métodos de outra classe. Isto é, uma classe base define atributos e comportamentos comuns, que são herdados por classes derivadas. As classes derivadas podem então adicionar características específicas ou sobrescrever comportamentos da classe base, modelando tanto as similaridades (herança) quanto as diferenças (especialização).
Afirmativa II: Incorreta. Objetos com os mesmos atributos e operações não necessariamente possuem a mesma identidade. Em orientação a objetos, cada objeto tem uma identidade única, independentemente de seus atributos e comportamentos serem idênticos aos de outro objeto. A identidade é o que permite distinguir cada objeto, mesmo que eles sejam instâncias da mesma classe e tenham estados internos equivalentes.
Afirmativa III: Correta. O polimorfismo é um conceito chave na POO e se refere à capacidade de uma função ou método ter várias formas. Ele permite que o mesmo nome seja usado para diferentes métodos que realizam ações similares, mas com tipos de entrada ou saídas diferentes (sobrecarga), além de permitir que uma classe derivada forneça uma implementação específica para um método já fornecido por sua classe base (sobrescrita).
Portanto, as afirmativas I e III estão corretas, enquanto a afirmativa II está errada, o que torna a alternativa B a resposta correta.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Sobrecarga = A possibilidade de uma operação(Método) ter o mesmo nome, diferentes assinaturas e possivelmente diferentes semânticas dentro de uma mesma classe ou de diferentes classes.
O item III seria a sobrecarga ou overload, que tambem é um tipo de polimorfismo.
Eu tinha esquecido, por isso errei.
fonte: hermes.ucs.br/ccet/demc/cacosta/TOO.pdf
Já a sobrescrita acontece quando a classe filha e a classe mãe de uma herança possuem um método com exatamente a mesma assinatura (nome, tipos dos parâmetros e mesma sequência). Nesse caso, há o polimorfismo dinâmico, pois a decisão de qual método está sendo invocado (se da classe filha ou da classe mãe) é feita em tempo de execução.
II. Falso! Cada objeto (instância) é único, possuem uma única identidade. Tem o caso também de duas classes serem diferentes porém possuir os mesmos atributos e métodos, fazendo com que os atributos e métodos de dois objetos sejam iguais, porém a identidade seja diferente.
III. Verdadeiro! A sobrecarga é conhecida como polimorfismo ad hoc, onde os métodos são iguais, mas as assinaturas são diferentes.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo