Os modificadores de acesso são palavras-chave que delimitam ...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a D, que afirma: o modificador default é atribuído quando não é informado nenhum modificador de acesso. Isso está correto porque, na linguagem Java, quando um membro de uma classe (seja ele um atributo, método ou a própria classe) não tem um modificador de acesso especificado, ele assume, por padrão, o acesso package-private, também informalmente conhecido como default. Esse nível de acesso permite que o membro seja acessado por outras classes que estejam no mesmo pacote, mas não por classes de pacotes diferentes.
Vamos detalhar brevemente o que cada modificador de acesso em Java especifica:
- private: O membro só pode ser acessado dentro da própria classe.
- protected: O membro pode ser acessado dentro da própria classe, por subclasses (independentemente do pacote) e por outras classes do mesmo pacote.
- public: O membro pode ser acessado de qualquer outra classe, independentemente do pacote em que estejam.
- default (package-private): Se nenhum modificador é especificado, o acesso default é atribuído e o membro só pode ser acessado por classes dentro do mesmo pacote.
Portanto, é essencial entender que a visibilidade de membros de classe em Java é controlada pelos modificadores de acesso, e cada um deles tem suas regras específicas que definem o nível de encapsulamento e exposição ao resto do código.
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
Private: A única classe que tem acesso ao atributo é a própria classe que o define, ou seja, se uma classe declara um atributo privado chamado , somente a classe terá acesso a ele.
Default: Tem acesso a um atributo (identificado pela ausência de modificadores) todas as classes que estiverem no mesmo pacote que a classe que possui o atributo.
Protected: Esse é o que pega mais gente, ele é praticamente igual ao , com a diferença de que se uma classe (mesmo que esteja fora do pacote) estende da classe com o atributo , ela terá acesso a ele. Então o acesso é por pacote e por herança.
Public: Esse é fácil, todos tem acesso
Resposta : D
- private : Os membros declarados como private só podem ser acessados dentro da própria classe. Isso inclui variáveis e métodos.
- protected : Os membros declarados como protected podem ser acessados dentro da própria classe, subclasses e classes no mesmo pacote.
- Sem modificador (padrão/default): Se nenhum modificador for especificado, o membro será acessível apenas para classes no mesmo pacote. Isso é conhecido como acesso padrão.
- public : Os membros declarados como public são acessíveis de qualquer lugar, dentro ou fora da classe, do mesmo pacote ou de pacotes diferentes
A = Private
B = DEFAULT
C = O Apenas deixou ela errada, todo mundo pode.
GABARITO D
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo