quarta-feira, 19 de fevereiro de 2014

Encapsulamento, Polimorfismo, Herança – Parte 02

Encapsulamento

Encapsulamento vem de encapsular, que em programação orientada a objetos significa separar o programa em partes, o mais isolado possível. A idéia é tornar o software mais flexível, fácil de modificar e de criar novas implementações. O Encapsulamento serve para controlar o acesso aos atributos e métodos de uma classe. É uma forma eficiente de proteger os dados manipulados dentro da classe, além de determinar onde esta classe poderá ser manipulada. Usamos o nível de acesso mais restritivo, private, que faça sentido para um membro particular. Sempre usamos private, a menos que tenhamos um bom motivo para deixá-lo com outro nível de acesso. Não devemos permitir o acesso público aos membros, exceto em caso de ser constantes. Isso porque membros públicos tendem a nos ligar a uma implementação em particular e limita a nossa flexibilidade em mudar o código. O encapsulamento que é dividido em dois níveis:


·       Nível de classe: Quando determinamos o acesso de uma classe inteira que pode ser public ou Package-Private (padrão);

·      Nível de membro: Quando determinamos o acesso de atributos ou métodos de uma classe que podem ser public, private, protected ou Package-Private (padrão).


Então para ter um método encapsulado utilizamos um modificador de acesso que geralmente é public, além do tipo de retorno dele. Para se ter acesso a algum atributo ou método que esteja encapsulado utiliza-se o conceito de get e set. Por definição, com SET é feita uma atribuição a algum atributo, ou seja, define, diz o valor que algum atributo deve ter. E  com GET é possível recuperar esse valor.


Exemplo:

1.            private String atributo1 = new String();  

2.            private String atributo2 = new String();  

3.            public String getAtributo1(){  

4.               return this.atributo1;  

5.            }  

6.            public String getAtributo2(){  

7.               return this.atributo2;  

8.            }  



Exemplo:

1.            public class Pessoa{

2.            private String nome;

3.            private String sobrenome;

4.            private String dataNasc;

5.            private String rg;

6.            private String[] telefones;



7.            public String getNome(){

8.            return nome;

9.            }

10.         public void setNome(String n){

11.         nome = n;

12.         }

13.         public String getSobrenome(){

14.         return sobrenome;

15.         }

16.         public void setSobrenome(String s){

17.         sobrenome = s;

18.         }

19.         public String getDataNasc(){

20.         return dataNasc;

21.         }

22.         public void setDataNasc(String d){

23.         dataNasc = d;

24.         }

25.         public String getRg(){

26.         return rg;

27.         }

28.         public void setRg(String r){

29.         r = rg;

30.         }

31.         public String getTelefones(){

32.         return telefones;

33.         }

34.         public void setTelefones(String[] telefones){

35.         telefones[] = telefones;

36.         }

37.         }


Nenhum comentário:

Postar um comentário

O que achou dessa postagem?