Considere: A classe Pedido contém um método chamado obter P...

Próximas questões
Com base no mesmo assunto
Q128149 Engenharia de Software
Considere: A classe Pedido contém um método chamado obter Produtos() que retorna uma lista de produtos pertencentes a um determinado pedido. O código que usa esta classe desconhece completamente como esta lista de produtos é montada. Tudo que interessa é a lista de produtos que o método retorna.
Na essência, o texto explica um dos fundamentos das linguagens OO que é

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: B - encapsulamento.

O fundamento em questão é o encapsulamento, um dos pilares fundamentais da programação orientada a objetos. Ele se refere à prática de esconder detalhes internos do funcionamento de um objeto, expondo apenas as operações que os usuários do objeto precisam conhecer. No exemplo dado, o método obterProdutos() da classe Pedido encapsula a lógica de como os produtos são obtidos e fornece à quem o utiliza apenas a lista final de produtos, sem necessidade de compreender o mecanismo interno de sua obtenção.

O encapsulamento tem diversos benefícios, como a proteção do estado interno do objeto, a redução de complexidade e o aumento da manutenabilidade do código. Além disso, permite que mudanças internas nas classes possam ser feitas sem impactar as outras partes do programa que dependem delas, contribuindo para um design de sistema mais flexível e robusto.

As outras opções não descrevem o conceito em destaque:

  • Polimorfismo: se relaciona à habilidade de um objeto ser tratado como uma instância de múltiplas classes devido à hierarquia de herança.
  • Dependência: diz respeito à relação entre classes onde uma depende de outra para funcionar, mas não descreve o ato de esconder a complexidade.
  • Herança múltipla: o mecanismo pelo qual uma classe pode herdar comportamentos e estados de mais de uma classe pai.
  • Estereotipagem: não é um conceito primário em orientação a objetos, podendo se referir a uma caracterização ou generalização superficial, e não tem relação com a questão em foco.

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

Encapsulamento vem de encapsular, que em programação orientada a objetos significa separar o programa em partes, o mais isoladas possível.
A idéia é tornar o software mais flexível, fácil de modificar e de criar novas implementações.
Uma das ideias mais importantes da orientação a objetos é o encapsulamento. Encapsular significa esconder a implementação dos objetos. O encapsulamento favorece principalmente dois aspectos de um sistema: a manutenção e o desenvolvimento.

Quando a questão diz que o método obter Produtos() retorna uma lista de produtos e quem usa esta classe desconhece completamente como a lista de produto é montada, ou seja, a forma como a lista é montada está escondida percebemos que estamos falando de encapsulamento.

Se uma operação nao necessita saber atributos irrelevantes, houve encapsulamento para ocultar essas variaveis como private, acessando-as por metodos getters & setters, o quao devem ser publicos

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo