11
ENCAPSULAMENTO, GET E SET. ESCOLA TÉCNICA ESTADUAL SANTA CRUZ - ETESC / FAETEC RIO DE JANEIRO, 13 DE ABRIL DE 2015 PROFESSORA: VALDINÉIA ALUNA: RAQUEL YOLANDA DA COSTA SILVA DISCIPLINA: LP3

Encapsulamento, get e set

Embed Size (px)

Citation preview

Page 1: Encapsulamento, get e set

ENCAPSULAMENTO,GET E SET.ESCOLA TÉCNICA ESTADUAL SANTA CRUZ - ETESC / FAETEC

RIO DE JANEIRO, 13 DE ABRIL DE 2015

PROFESSORA: VALDINÉIA

ALUNA: RAQUEL YOLANDA DA COSTA SILVA

DISCIPLINA: LP3

Page 2: Encapsulamento, get e set

ENCAPSULAMENTO

• Uma classe normalmente consiste em um ou mais métodos que manipulam os atributos que pertencem a um objeto particular da classe.

• Os atributos são representados como variáveis em uma declaração de classe. Essas variáveis são denominadas campos e estão declaradas dentro de uma declaração de classe, mas fora do corpo das declarações de método da classe.

• Quando cada objeto de uma classe mantém sua própria cópia de um atributo, o campo que representa o atributo também é conhecido como variável de instância.

Page 3: Encapsulamento, get e set

Encapsulamento:

• Também chamado de ocultamento de dados ou ocultamento de informações, o encapsulamento evita que o atributo seja modificado acidentalmente por uma classe em outra parte do programa.

• Isso significa que os objetos podem saber como se comunicar com outros por meio de interfaces bem definidas, mas normalmente eles não têm permissão para saber como os outros objetos são implementados (os detalhes de implementação são ocultados dentro dos próprios objetos).

Page 4: Encapsulamento, get e set

Modificadores de acesso: definem a acessibilidade e evitam o uso indevido de um atributo de uma classe por outra classe externa. São classificados em:

• Public: define os atributos e métodos de uma classe acessíveis por qualquer classe externa.

• Private: define os atributos e métodos de uma classe acessíveis unicamente por métodos da classe onde foram declarados.

• Protected: oferece um nível intermediário de acesso entre public e private. Define que os métodos e atributos de uma superclasse podem ser acessados por membros dessa superclasse, por membros de suas subclasses e por membros de outras classes no mesmo pacote.

• Package: é um modificador assumido como padrão quando nenhum modificador de acesso (public, private ou protected) for declarado para um método ou variável de instância. Define Métodos e variáveis de instância como acessíveis por qualquer classe dentro do mesmo pacote .

Page 5: Encapsulamento, get e set

GET E SET

• Os campos private de uma classe podem ser manipulados somente por métodos da classe onde foram declarados.

• Essas classes fornecem métodos public para permitir que outras classes possam atribuir (set) valores ou obter (get) valores de variáveis de instância private.

• Métodos set: são chamados de métodos modificadores, porque modificam os valores de variáveis de instância.

• Métodos get: são chamados de métodos de acesso ou de consulta, porque são usados para acessar os valores das variáveis de instância.

Page 6: Encapsulamento, get e set

• Se uma variável de instância for declarada private, um método get public permitirá que outros métodos a acessem, mas o get pode controlar como o cliente pode acessá-la.

Exemplo: um método get poderia controlar o formato dos dados que ele retorna e assim proteger o código.

• Um método public set pode avaliar as tentativas de modificar o valor da variável a fim de assegurar que o novo valor é consistente.

Exemplo: uma tentativa de configurar o dia do mês como 40 seria rejeitada, uma tentativa de configurar o peso de uma pessoa com um valor negativo seria rejeitada.

• Portanto, embora os métodos get e set possam fornecer acesso a dados private, o acesso é restrito pela implementação dos métodos.

Page 7: Encapsulamento, get e set

Exemplo: Programa que lê o nome, a altura e o peso de uma pessoa. Ao final, o programa exibe na tela o nome, a altura e o peso e o índice de massa corporal dessa pessoa. IMC = peso/(altura x altura)

Page 8: Encapsulamento, get e set
Page 9: Encapsulamento, get e set
Page 10: Encapsulamento, get e set

1 2

3 4

Executando:

Page 11: Encapsulamento, get e set

REFERÊNCIAS BIBLIOGRÁFICAS

• DEITEL, Harvery M. Java Como Programar, 8ª edição. Páginas 63, 64, 66, 252, 253, 268 e 281.