Como é chamado, em orientação a objetos, o recurso em que u...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: A - Interface.
Em Programação Orientada a Objetos (POO), uma interface é uma estrutura que define um contrato na forma de métodos sem implementação. As classes que adotam essa interface são obrigadas a implementar esses métodos, seguindo as especificações que a interface determina. Isso é especialmente útil para garantir que diferentes classes ofereçam os mesmos serviços, mesmo que de maneiras distintas, o que proporciona flexibilidade e intercambiabilidade no uso dessas classes.
A utilização de interfaces é fundamental para a organização e a arquitetura de sistemas complexos, pois permite que diferentes partes de um programa comuniquem-se de forma clara e previsível. Por exemplo, se você tem uma interface chamada FormaGeometrica
que declara um método calcularArea()
, todas as classes que implementam essa interface, como Circulo
, Quadrado
e Triangulo
, devem fornecer uma implementação concreta para o cálculo da área.
Vamos rapidamente entender por que as outras alternativas não são corretas:
- B - Polimorfismo: O polimorfismo é um conceito que permite que objetos de diferentes classes sejam tratados como objetos de uma classe comum. Está mais ligado à capacidade de um método ser implementado de várias formas (sobrescrita) ou a um objeto ser referenciado de várias formas (sobrecarga).
- C - Herança múltipla: Herança múltipla se refere à capacidade de uma classe herdar características de mais de uma classe base. Em algumas linguagens, como C++, isso é permitido, mas em outras, como Java, não é diretamente suportado devido a complicações como o problema do diamante.
- D - Encapsulamento: Encapsulamento é um princípio que diz respeito a restringir o acesso a certos componentes de uma classe, escondendo a complexidade interna do funcionamento da classe e protegendo os dados. Este conceito está mais relacionado com a segurança e a integridade dos dados dentro de um objeto.
A interface é, portanto, o mecanismo usado para definir um conjunto de métodos abstratos que outras classes devem implementar. É uma maneira de assegurar que diferentes classes sigam uma "forma" comum, facilitando assim o uso polimórfico dos objetos. Por essas razões, a Alternativa A é a 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
Interfaces
- Uma interface especifica quais operações são permitidas, mas não como elas são realizadas.
- A interface descreve um conjunto de métodos que podem ser chamados em um objeto.
- Todos os membros de interface devem ser public e as interfaces não podem especificar nenhum detalhe de implementação, como declarações de método concreto e variáveis de instância.
OBS: A parir do Java 8 é permitido criar métodos concretos dentro de uma interface utilizando a palavra reservada default antes do tipo de retorno do método. Quando uma classe implementa uma interface, a classe recebe as implementações concretas default da interface se ela não sobrescrevê-las.
Alternativa: A
Vamos analisar alternativa por alternativa.
- a) Interface é o nosso gabarito. Ela implementa exatamente o que foi definido na classe. Associe com a assinatura de um contrato (o contratante tem que seguir o contrato, a interface é a mesma coisa) CORRETO;
- b) O comando da questão não deixou margem para falar que posso mudar o que foi definido pela classe e por isso está INCORRETO;
- c) Se a questão estivesse perguntando de mais de uma classe, poderíamos pensar, mas como ela perguntou somente uma classe, está INCORRETO;
- d) Não falou de proteção da classe. INCORRETO.
conceito de interface:
define os moldes de métodos a serem implementados
é implementada, enquanto que classes sao estendidas
Discordo do gabarito dessa questão, e acredito que ninguém entrou com recurso na época, mas uma classe não herda uma interface, uma classe implementa uma interface.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo