Leia a descrição no quadro abaixo. Esconder os dados intern...

Próximas questões
Com base no mesmo assunto
Q762232 Engenharia de Software
Leia a descrição no quadro abaixo. Esconder os dados internos do mundo exterior e acessá-los apenas através de métodos expostos publicamente. Assinale a alternativa que corresponde a essa propriedade da orientação a objetos.
Alternativas

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