Encapsulamento

3 respostas
G

Eu to estudando java e comecei por OO para entender bem, eu to com uma duvida tipo por que é importante que a representação de um tipo abstrato de dados seja encapsulada e declarada privada da classe que implementa o tipo.
Vlw

3 Respostas

D

Como você deve esta vendo classes abstratas não tem código funcional dentro delas, servem apenas para obrigar que suas classes-filhas implementem seus metodos. Encapsular tem uma series de vantagens e é uma das bases da programação orientada. Colocar os atributos da classe abstrata privados ajuda a dar coesão ao código, pois faz com que não possam ser alterados diretamente. Além disso metodos privados são mais usados apenas por outros metodos públicos, que podem ser chamados a partir de outro objeto, da mesma classe a fim de não repetir código em mais de um método.

G

Entendi mais ou menos a parte da teoria, se possivel teria como vc me mostrar o encapsulamento em um código, como eu identifico ele ou a forma precisa para usar ele.

D
Como estou no trabalho não da pra fazer um então peguei um pronto ^^
class Encapsulado {
   //private é um modificador de acesso de restrição máxima
   private int comProtecao;

   public void setComProtecao(int comProtecao) {
       this.comProtecao = comProtecao;
   }

   public int getComProtecao() {
       return this.comProtecao;
   }
}

public class TesteEncapsulado {
   public static void main(String[] args) {
       Encapsulado e = new Encapsulado(); //"e" é uma instância de Encapsulado

       //acesso direto a um atributo protegido implicará em erro de compilação
       e.comProtecao = 10;

       //deve-se acessar o atributos de forma indireta, encapsulada
       e.setComProtecao(10);
       System.out.println("Valor com proteção: " + e.getComProtecao());
   }
}

fonte: http://pt.wikipedia.org/wiki/Encapsulamento

Criado 14 de julho de 2009
Ultima resposta 16 de jul. de 2009
Respostas 3
Participantes 2