No que diz respeito ao paradigma da orientação a objetos, do...
I. Indica a capacidade de abstrair várias implementações diferentes em uma única interface. É o 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 comportamentos distintos, especializados para cada classe derivada, usando para tanto uma referência a um objeto do tipo da superclasse. II. Tem por objetivo separar o programa em partes, o mais isolado possível. A ideia é tornar o software mais flexível, fácil de modificar e de criar novas implementações. Serve para controlar o acesso aos atributos e métodos de uma classe. É uma forma eficiente de proteger os dados manipulados dentro da classe, além de determinar onde essa classe poderá ser manipulada.
Os princípios descritos em I e em II são denominados, respectivamente,
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: E - polimorfismo e encapsulamento.
O enunciado da questão apresenta a descrição de dois princípios fundamentais da orientação a objetos, e solicita que identifiquemos cada um deles. Vamos analisar o conteúdo de cada um dos princípios descritos:
- Princípio I - Polimorfismo: Este princípio é descrito como a capacidade de diferentes classes derivadas de uma mesma superclasse chamarem métodos com a mesma identificação (ou assinatura) mas que apresentam comportamentos diferentes. Isso é possível através da definição de métodos em uma classe base que são sobrescritos por classes derivadas. O polimorfismo permite que tratemos objetos de diferentes classes derivadas como objetos de sua classe base, proporcionando flexibilidade e reusabilidade no código.
- Princípio II - Encapsulamento: O princípio do encapsulamento visa separar o programa em partes distintas e proteger os dados dentro de uma classe, controlando o acesso a seus atributos e métodos. Isso é alcançado através do uso de modificadores de acesso (como
private
,protected
epublic
), que determinam onde e como as propriedades e os métodos de uma classe podem ser acessados e modificados. O encapsulamento ajuda a reduzir interdependências entre as partes do software, tornando-o mais fácil de manter e estender.
Com base nessas informações, podemos justificar por que a alternativa E é correta:
O Princípio I corresponde claramente ao conceito de polimorfismo, pois enfatiza a habilidade de diferentes classes derivadas executarem versões especializadas de um mesmo método definido na superclasse. O Princípio II descreve o encapsulamento, já que foca em criar uma barreira protegendo os dados internos da classe e expõe apenas o necessário, facilitando a modularidade e a manutenção do código.
Conhecendo esses conceitos, você poderá aplicar esses princípios para desenvolver códigos mais robustos, flexíveis e fáceis de manter. Lembre-se de que a orientação a objetos não é apenas sobre usar classes e objetos, mas também sobre aplicar esses princípios fundamentais para criar um bom design de software.
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
- Polimorfismo
- Habilidade de diferentes objetos responderem à mesma mensagem de modos distintos, possibilitando a interação entre eles sem que conheçam seus tipos exatos
- Indica a capacidade de abstrair várias implementações diferentes em uma única interface.
- É o 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 comportamentos distintos, especializados para cada classe derivada, usando para tanto uma referência a um objeto do tipo da superclasse.
- Encapsulamento
- No encapsulamento, deixamos os atributos privados e os métodos públicos
- Tem por objetivo separar o programa em partes, o mais isolado possível.
- A ideia é tornar o software mais flexível, fácil de modificar e de criar novas implementações.
- Serve para controlar o acesso aos atributos e métodos de uma classe.
- É uma forma eficiente de proteger os dados manipulados dentro da classe, além de determinar onde essa classe poderá ser manipulada.
Gab: E
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo