Encapsulamento em Java

Encapsulamento é o mesmo que ocultar a informação.Porém um Objeto encapsula um estado (dados) e métodos (códigos) que podem acessar dados.O encapsulamento protege os atributos do objeto a manipulação de outro objetos, proteção contra acesso não autorizados.

O encapsulamento em Java é implementado através de seus modificadores de acesso: público, private,protegido e implícito.Então cada método ou variável podem ser declaradas como pública, privada ou protegida.

Modificadores 
  
Usado para modificar o modo como são declaradas as classes, métodos e variáveis. Existem três modificadores de acesso e o quarto nível (acesso default), quando não usa nenhum dos três modificadores.Toda classe, método e variáveis de instância que declara tem um controle de acesso. 

relembrando:
 - variáveis de instância são os campos do objeto, como também são chamados de campos, propriedades ou atributos;
-variáveis locais são declarados dentro de um método
- métodos e variáveis de instância são também chamados de "membros".
- É permitido que uma variável local tenha o mesmo nome de uma variável de instância , utilizando a referência this para acessar a variável de instância.

Modificadores Classes

Uma classe pode ser declarada apenas com acesso public ou default.O acesso public, permite que todas as classes tenha acesso a esta classe, para acessar uma classe public que esteja em outro pacote precisamos usar o import.

Modificador de acesso de métodos e variáveis

Modificadores de acesso public: 
Quando um método ou variável - membro é declarado como public, todas as outras classes independente do pacote, podem acessar a qualquer membro.
 
Modificador de acesso private:
Quando um método ou variável é declarado como private não pode se acessado por nenhuma outra classe, e não é visto nas subclasses, assim nao usa o overriding.

Modificador de acesso protected e default:
o controle de acesso protected e default são parecidos, mas tem uma diferença fundamental. Um membro default só pode ser acessado se a classe que estiver acessando é do mesmo pacote, enquanto o protected pode ser acessado (através de herança) por uma subclasse mesmo se subclasse estiver em pacote diferente.

 
 


...

0 comentários: