java: encapsulamento e modificadores de acesso

27
Java: Encapsulamento e Modificadores de Acesso Me. Arthur Emanuel de Oliveira Carosia

Upload: arthur-emanuel

Post on 13-Feb-2017

133 views

Category:

Technology


5 download

TRANSCRIPT

Page 1: Java: Encapsulamento e modificadores de acesso

Java: Encapsulamento e Modificadores de

AcessoMe. Arthur Emanuel de Oliveira Carosia

Page 2: Java: Encapsulamento e modificadores de acesso

Conteúdo Encapsulamento Getters/Setters Construtor Modificadores de Acesso

◦ Public◦ Private◦ Protected

Static Pacotes

Page 3: Java: Encapsulamento e modificadores de acesso

Ecapsulamento Esconder todos os atributos de uma classe,além de esconder como funcionam os métodosdo nosso sistema.

Encapsular é fundamental para que seu sistema seja suscetível a mudanças.

Uma regra de negócio se concentra em apenas um único lugar, já que essa regra

está encapsulada.

Page 4: Java: Encapsulamento e modificadores de acesso

Encapsulamento Um objeto nunca deve manipular diretamente os atributos de outro objeto

Manipulação deve ser feita via métodos, que garante o encapsulamento

Para isso, normalmente declara-se os atributos de uma classe como privados ou protegidos.

Normalmente, métodos são declarados como públicos

Page 5: Java: Encapsulamento e modificadores de acesso

Encapsulamento

Page 6: Java: Encapsulamento e modificadores de acesso

Encapsulamento

Como retornar a idade do cliente utilizando um

método?

Como evitar que seja atribuído uma idade negativa

ao cliente?

Como atribuir uma idade ao cliente usando um método?

Page 7: Java: Encapsulamento e modificadores de acesso

Caso haja a necessidade de se ter acessoa algum atributo, métodos devem ser

fornecidos para isso

Métodos que provêem acesso ao valor do atributo possuem GET no seu prefixo.

Métodos que modificam valores de atributos possuem SET no seu prefixo.

Getters e Setters

Page 8: Java: Encapsulamento e modificadores de acesso
Page 9: Java: Encapsulamento e modificadores de acesso

Como alterar o retorno do saldo para que seja levado em consideração o

limite da conta?

Implemente o método depositar

Como evitar que seja depositado valor negativo na conta?

Crie uma classe Principal que faça uso da classe Conta e use todos os seus

métodos.

Page 10: Java: Encapsulamento e modificadores de acesso

Getters e Setters

Page 11: Java: Encapsulamento e modificadores de acesso

Os construtores são usados para inicializar objetos de uma classe, dando aos atributos o estado inicial que se quer que os mesmos tenham

Um construtor:◦ Tem o mesmo nome da classe◦ Pode ter um ou mais parâmetros◦ Sempre é chamado através do comando new◦ Não retorna valor◦ Não podem ser explicitamente chamados como

um método da classe

Construtores

Page 12: Java: Encapsulamento e modificadores de acesso

Construtores

Page 13: Java: Encapsulamento e modificadores de acesso

Construtores

Page 14: Java: Encapsulamento e modificadores de acesso

Public◦ Uma declaração com o modificador public pode ser acessada de qualquer

lugar e por qualquer entidade que possa visualizar a classe a que ela pertence.

Private◦ Os membros da classe definidos como não podem ser acessados ou

usados por nenhuma outra classe. Esse modificador não se aplica às classes, somente para seus métodos e atributos. Esses atributos e métodos também não podem ser visualizados pelas classes herdadas.

Protected◦ O modificador protected torna o membro acessível às classes do mesmo

pacote ou através de herança, seus membros herdados não são acessíveis a outras classes fora do pacote em que foram declarados.

default (padrão):◦ A classe e/ou seus membros são acessíveis somente por classes do

mesmo pacote, na sua declaração não é definido nenhum tipo de modificador, sendo este identificado pelo compilador.

Modificadores de Acesso

Page 15: Java: Encapsulamento e modificadores de acesso

Nomeie a Classe Normalmente as classes são públicas Insira os atributos da classe Normalmente os atributos são privados Faça seus respectivos métodos Get e Set

para os atributos que necessitarem Crie os construtores da classe Implemente os métodos necessários

Construindo uma Classe

Page 16: Java: Encapsulamento e modificadores de acesso

Escreva uma classe Circulo, que contenha:• raio inteiro e centro em inteiros x e y.• método que retorna a área• método que retorna a circunferência

Crie para cada atributo seus métodos get e set Crie o construtor sem parâmetro da classe círculo,

inicializando todos os valores como 0. Crie um construtor com 3 parâmetros, o raio, x e y.

Teste a classe em uma classe Principal.

Exercícios

Page 17: Java: Encapsulamento e modificadores de acesso

Modele um funcionário. Ele deve ter o nome do funcionário, o departamento onde trabalha, seu salário (double), a data de entrada no banco (String) e seu RG (String).

Crie os métodos get e set para cada atributo e também crie um construtor vazio e outro que receba todos os atributos de funcionário.

Teste a classe em uma classe Principal.

Exercícios

Page 18: Java: Encapsulamento e modificadores de acesso

Classe: Pessoa Atributos: nome, idade. Método: void fazAniversario() Implemente os métodos get e set de cada

atributo e também crie seus construtores.

Teste a classe em uma classe Principal.

Exercícios

Page 19: Java: Encapsulamento e modificadores de acesso

É usado para a criação de uma variável que poderá ser acessada por todas as instâncias de objetos desta classe

Quando seu conteúdo é modificado numa das instâncias, a modificação ocorre em todas as demais.

Static

Page 20: Java: Encapsulamento e modificadores de acesso

Static

Page 21: Java: Encapsulamento e modificadores de acesso

A linguagem Java permite agrupar classes em uma coleção chamada pacote◦ Ao escrever um pacote é preciso colocar o nome do

pacote no topo do arquivo-fonte que declara a classe

◦ Um pacote reflete uma estrutura de diretórios◦ Um pacote é declarado usando-se a palavra-chave package

Para se usar um pacote criado, usa-se:import pacote.*

Pacotes

Page 22: Java: Encapsulamento e modificadores de acesso

Pacotes

Page 23: Java: Encapsulamento e modificadores de acesso

Exercícios Classe: Porta Atributos: aberta, cor, dimensaoX, dimensaoY, dimensaoZ Métodos:

◦ void abre() ◦ void fecha() ◦ void pinta(String s) ◦ boolean estaAberta()

Crie métodos get e set e também construtores.

Crie uma porta, abra e feche a mesma, pinte-a de diversas cores, altere suas dimensões e use o método estaAberta  para verificar se ela está aberta.

Page 24: Java: Encapsulamento e modificadores de acesso

Defina uma classe para representar um candidato a uma eleição, com atributos para armazenar o nome do candidato e o número de votos, ambos privados. Defina um método de acesso para cada atributo, um método para incrementar o número de votos do candidato e um construtor para a classe que recebe como argumento o nome do candidato e inicializa o número de votos com zero.

Exercícios

Page 25: Java: Encapsulamento e modificadores de acesso

Desenvolva um programa que cria um candidato com nome de sua escolha. Em seguida, deve ser lido um nome. Se o nome lido for o do seu candidato, incrementar o contador de votos. No final, imprimir o nome do candidato e o total de votos.

Exercícios

Page 26: Java: Encapsulamento e modificadores de acesso

Jsp, Servlets e J2EE. André Temple, Rodrigo Fernandes de Mello, Danival Taffarel Calegari and Maurício Schiezaro. Disponível em: www.inf.ufsc.br/~bosco/downloads/livro-jsp-servlets-j2ee.pdf.

W3Schools. Disponível em: http://www.w3schools.com/.

Apostila de Java. Caelum. Disponível em: http://www.caelum.com.br/apostila-java-orientacao-objetos/.

DEITEL, Paul J.; DEITEL, Harvey M. Java - como programar. 8. ed. São Paulo: Pearson Prentice Hall, 2010.

Referências

Page 27: Java: Encapsulamento e modificadores de acesso

Java

Me. Arthur Emanuel de Oliveira Carosia