A classe “Produto” tem as características: Código, Descrição...

Próximas questões
Com base no mesmo assunto
Q2695589 Arquitetura de Software

A classe “Produto” tem as características: Código, Descrição, Preço e Saldo; e os comportamentos: Cadastrar e AlterarSaldo.

Qual das implementações em Java, a seguir, está de acordo com os conceitos de Encapsulamento e acesso através da Interface?

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa Correta: B

Vamos entender o motivo:

Para resolver essa questão, é essencial compreender os conceitos de Encapsulamento e acesso através de Interface na programação orientada a objetos.

Encapsulamento é uma prática que visa proteger os dados da classe, tornando seus atributos privados e acessíveis somente através de métodos públicos. Isso garante que os dados sejam manipulados de maneira controlada e segura.

Vamos analisar cada alternativa:

A: Nesta implementação, todos os atributos são públicos. Isso viola o princípio do encapsulamento, pois permite que qualquer parte do código acesse e modifique diretamente os atributos da classe.

B: Esta alternativa utiliza corretamente o encapsulamento. Os atributos são declarados como privados, e os métodos são públicos, permitindo que sejam acessados de fora da classe de maneira controlada.

C: Semelhante à alternativa A, esta implementação não utiliza o encapsulamento, pois os atributos são de acesso padrão (package-private), o que permite acesso direto aos atributos de qualquer classe do mesmo pacote.

D: Embora os atributos sejam encapsulados corretamente, os métodos são declarados como static. Métodos estáticos não podem acessar atributos de instância diretamente usando this, o que torna essa implementação incorreta.

E: A classe é declarada como privada, o que a torna inacessível de fora do arquivo em que foi definida, violando o princípio de acesso através de interface e encapsulamento.

Assim, a alternativa B é a única que respeita os conceitos de encapsulamento e acesso através de interface, garantindo que os atributos sejam privados e manipulados de maneira controlada por métodos públicos.

Gostou do comentário? Deixe sua avaliação aqui embaixo!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo