modificadores de acesso Java – públicos, privados, protegidos e predefinidos

posted in: Articles | 0

você deve ter visto palavras-chave públicas, privadas e protegidas enquanto pratica programas java, estes são chamados modificadores de acesso. Um modificador de acesso restringe o acesso de uma classe, construtor, membro de dados e método em outra classe. Em java temos quatro modificadores de acesso:
1. default
2. private
3. protegido
4. public

Default access modifier

When we do not mention any access modifier, it is called default access modifier., O escopo deste modificador está limitado apenas ao pacote. Isto significa que se tivermos uma classe com o modificador de acesso padrão em um pacote, apenas as classes que estão neste pacote podem acessar esta classe. Nenhuma outra classe fora deste pacote pode acessar esta classe. Da mesma forma, se temos um método padrão ou membro de dados em uma classe, ele não seria visível na classe de outro pacote. Vamos ver um exemplo para entender isso:

Padrão Modificador de Acesso Exemplo em Java

Para entender este exemplo, você deve ter o conhecimento de pacotes em java.,

neste exemplo, temos duas classes, a classe de Teste está tentando acessar o método padrão de Adição de classe, pois a classe de Teste pertence a um pacote diferente, este programa seria jogar erro de compilação, porque o escopo do padrão modificador é limitado para o mesmo pacote em que ela é declarada.Addition.Java

Test.java

Saída:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: The method addTwoNumbers(int, int) from the type Addition is not visibleat xyzpackage.Test.main(Test.java:12)

modificador de acesso privado

o âmbito do modificador privado está limitado apenas à classe.,

  1. membros de dados privados e os métodos só estão acessíveis dentro da classe
  2. e a Interface não pode ser declarada como privada
  3. Se uma classe tiver construtor privado, então você não pode criar o objecto dessa classe A partir de fora da classe.

Vamos ver um exemplo para entender isso:

acesso Privado modificador exemplo em java

Este exemplo lança erro de compilação porque estamos tentando acessar os dados privados de membro e o método da classe ABC, na classe de Exemplo. O membro de dados privados e o método só são acessíveis dentro da classe.,

saída:

Compile - time error

Modificador De Acesso protegido

membro e método de dados protegidos só são acessíveis pelas classes do mesmo pacote e as subclasses presentes em qualquer pacote. Você também pode dizer que o modificador de acesso protegido é semelhante ao modificador de acesso padrão, com uma exceção que ele tem visibilidade em sub-classes.As Classes não podem ser declaradas protegidas. Este modificador de acesso é geralmente usado em uma relação pai-filho.,

exemplo de modificador de acesso protegido em Java

neste exemplo, o teste de classe que está presente em outro pacote é capaz de chamar o método addTwoNumbers(), que é declarado protegido. Isto porque a classe de teste amplia a adição de classe e o modificador protegido permite o acesso de membros protegidos em subclasses (em quaisquer pacotes).Addition.java

package abcpackage;public class Addition { protected int addTwoNumbers(int a, int b){return a+b; }}

Test.Java

Saída:

33

modificador de acesso público

os membros, métodos e classes declarados públicos podem ser acessados em qualquer lugar., Este modificador não restringe o acesso.

exemplo de modificador de acesso público em java

vamos tomar o mesmo exemplo que vimos acima, mas desta vez o método addTwoNumbers() tem modificador público e teste de classe é capaz de acessar este método sem mesmo estender a classe de adição. Isto porque o modificador público tem visibilidade em todos os lugares.Addition.java

package abcpackage;public class Addition { public int addTwoNumbers(int a, int b){return a+b; }}

Test.,Java

Saída:

101

permite ver o âmbito destes modificadores de acesso em forma tabular:

o âmbito dos modificadores de acesso em forma tabular

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *