1

Modificadores de Acesso em Java

#Java
Luis Paolini
Luis Paolini

Quando iniciamos o aprendizado da linguagem Java, logo nos deparamos com os modificadores de acesso: Private, Default, Protected e Public.


Os modificadores de acesso determinam a acessibilidade e o escopo de vários elementos do nosso código, tais como: propriedades, métodos, construtores e classes.


É muito importante que tenhamos um bom entendimento sobre cada um deles, para que possamos tornar nosso código mais bem estruturado e seguro.


De uma maneira simples, segue uma breve explicação sobre cada um desses modificadores, partindo do mais restritivo para o menos restritivo.


1. Private: Este é o modificador de acesso mais restritivo, pois um elemento definido com esse modificador só pode ser acessado de dentro da própria classe onde o mesmo foi definido.


2. Default: Quando não explicitamos o uso de nenhum modificador, o modificador Default é aplicado e, o elemento definido com esse modificador, pode ser acessado não só dentro da própria classe, mas também a partir de qualquer outra classe que esteja dentro do mesmo pacote (package).


3. Protected: Este modificador já permite um grau maior de acesso, uma vez que o elemento definido com esse modificador possui as mesmas características do modificador Default e também pode ser acessado a partir de uma classe que não esteja no mesmo pacote, desde que a classe a partir da qual será feito o acesso, seja uma classe filha (relação de herança).


4. Public: Este é o modificador de acesso mais abrangente, uma vez que o elemento definido com esse modificador pode ser acessado a partir de qualquer classe da aplicação, estando ou não dentro do mesmo pacote.


Essa tabela resume o comportamento dos modificadores de acesso descritos anteriormente:


  modificador de acesso | dentro da classe | dentro do pacote | fora do pacote (subclasse) | fora do pacote
  ---------------------------------------------------------------------------------------------------------
  Private               |       Sim        |        Não       |            Não             |      Não
  ---------------------------------------------------------------------------------------------------------
  Default               |       Sim        |        Sim       |            Não             |      Não
  ---------------------------------------------------------------------------------------------------------
  Protected             |       Sim        |        Sim       |            Sim             |      Não
  ---------------------------------------------------------------------------------------------------------
  Public                |       Sim        |        Sim       |            Sim             |      Sim
  ---------------------------------------------------------------------------------------------------------



0
3

Comentários (3)

0
Marcos Silva

Marcos Silva

09/06/2021 20:35

Caramba, vc mandou muito bem, faltou realmente uma explicação nesse nível, muito bom!

0
Leandro Carvalho

Leandro Carvalho

09/06/2021 18:39

Sou novo em Java e estava me sentindo um pouco perdido na Linguagem, obrigado pela explicação.

0
Neilor Marangoni

Neilor Marangoni

09/06/2021 18:08

Luis, legal o resumo de grande valia pra quem está se ambientando na linguagem.

Geek, apaixonado por tecnologia e pai da Luisa.

Brasil