Encapsulamento:
Encapsulamento e responsavel por determinar qual sera o nivel de acesso de uma variavel, classe, metodo ou construtor. Através dos modificadores de acesso é possível isolarmos as partes do nosso código, para que com isso ele se torne mais flexível e mais fácil de manter.
Existem quatro modificadores de acesso que determinam o nível de encapsulamento:
- private: somente quem está dentro da mesma classe terá acesso;
- default: somente quem está dentro do mesmo pacote da classe terá acesso;
- protected: somente quem está dentro da mesma classe, dentro do mesmo pacote ou dentro de uma classe que extenda a classe onde o objeto foi definido;
- public: todo mundo tem acesso.
package br.unip.private;
public class Private{
// Só será possível acessar este construtor de dentro desta classe
private Private(){
}
}
package br.unip.default;
public class Default{
//Só será possível acessar este construtor de dentro deste pacote
Default(){
}
}
package br.unip.default;
public class TestDefault{
public TestDefault(){
//Acesso possível já que estamos no mesmo pacote
Default = new Default();
//Acesso inválido já que o construtor é privado
Private = new Private(); // erro de compilação.
}
}
package br.unip.protected;
public class Protegido{
protected Protegido(){
}
}
package br.unip.protected;
public class TestProtected{
public TestProtected(){
// Acesso permitido, pois está no mesmo pacote
Protegido protegido = new Protegido();
}
}
package br.unip;
public class TestProtegidoHeranca extends Protegido{
public TestProtegidoHeranca(){
//Acesso permitido, pois esta classe extende protegido.
Protegido protegido = new Protegido();
}
}
Nenhum comentário:
Postar um comentário