Leia a descrição no quadro abaixo. Esconder os dados intern...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: C - Encapsulamento.
O conceito ao qual a questão se refere trata da ocultação de detalhes internos de funcionamento das classes ao mundo exterior, isto é, o princípio de Encapsulamento. Esse princípio é fundamental na Engenharia de Software e na programação orientada a objetos, pois permite que objetos controlem o acesso aos seus dados internos e métodos.
A prática correta de encapsulamento envolve a definição de variáveis de classe como privadas ou protegidas e a exposição de métodos públicos para a interação com esses dados. A ideia é oferecer uma interface pública para os comportamentos da classe enquanto mantém-se a estrutura interna e estado dos objetos escondidos e seguros contra usos indevidos.
O encapsulamento é uma característica que ajuda na manutenção e na flexibilidade do código, permitindo alterações internas sem impactar outros componentes que dependem da classe. Além disso, é uma base importante para outros conceitos, como a herança e o polimorfismo.
Essa capacidade de restringir o acesso direto a alguns componentes da classe é o que diferencia o Encapsulamento das outras opções da questão, tornando a alternativa C - Encapsulamento a única 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
encapsulamento é o mecanismo de ocultar e manipular por publicos metodos. e.g:
package contestquestions;
public class Correntist {
private String nome;
private int num;
private double saldo;
//construtor indicando a necessidade de inicializar variaveis nome e num quando criar objeto
public Correntist(String nome, int n) {
// TODO Auto-generated constructor stub
this.nome = nome;
this.num = n;
}
//metodos getters & setters para acessar variaveis private. setters escrevem; getters leem.
public void setNome(String nome) {
this.nome = nome;
}
public String getNome() {
return nome;
}
public void setNum(int num) {
this.num = num;
}
public int getNum() {
return num;
}
public void setSaldo(double saldo) {
this.saldo = saldo;
}
public double getSaldo() {
return saldo;
}
public void depositar (double val){
saldo = saldo + val;
}
private boolean existSald(double val){
if (val <= saldo)
return true;
else
return false;
}
public void sacar (double sac){
if (existSald(sac) == true){
saldo = saldo - sac;
}
}
}
//outra clase para testar
package contestquestions;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Correntist corr = new Correntist(null, 666);
corr.setNome("exemplo");
corr.setSaldo(99.9);
corr.depositar(10);
corr.sacar(99);
System.out.println("saldo atual de" + corr.getNome() + " é " + corr.getSaldo());
}
}
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo