Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Protected ou private?

Consegui entender o que significa esses 2 modificadores de acesso, mas fiquei com uma dúvida: em que situações seria realmente interessante usar o protected, ao invés de usar private e acessar os campos por meio de getter's?

2 respostas
solução!

Quando você trabalha com heranças, por exemplo.

Imagine que você tem uma classe Pessoa:

class Pessoa{
    protected String nome;
}

e uma classe Aluno:

class Aluno extends Pessoa {
}

se você precisar da variável nome dentro da classe aluno, você não precisa utilizar getNome(), o que seria estranho, e sim acessar por meio do this.nome.

Olá Sabrina, tudo bem ?

Referente a sua dúvida depende muito da regra de negócio ou do problema em questão, mas o que pode-se afirmar referente ao uso do Protected ao invés dos Getter's e Setter's seria a maneira mais fácil para que as classes filhas acessem e peguem as informações da Classe MÃE/ SUPER CLASSE reduzindo o tamanho do código. Agora se você procura apontar algo, modificar, obter maior foco no encapsulamento e principalmente com foco no encapsulamento o ideal seria os Getter's e Setter's onde o seu objetivo de fato é não permitir que variáveis sejam modificadas diretamente.

Espero ter ajudado,

Ótimos Estudos !