Escolar Documentos
Profissional Documentos
Cultura Documentos
P. O. O.
Prof. Grace
Programação Orientada a Objetos
Classe Objeto
X
Abstração Concreto
Molde Ocorrência real
(Projeto) Instância
(Produto)
3
Composição de uma Classe
4
Exemplo: Conta bancária
5
Exemplo: Círculo
Classe: Círculo
Atributos (variáveis de instância)
– Raio
Métodos (tarefas)
– Alterar/ informar raio
– Calcular diâmetro
– Calcular área
– Calcular circunferência
– Exibir Dados
6
Definindo uma Classe
7
Exemplo
Atributos
Chaves
Métodos
públicos
8
Métodos
9
Exemplo
10
Cuidado!!!
11
Como testar uma classe?
12
Programas usando classes
Chamando um método:
– Nome de objeto + ponto (.) + nome do método +
parênteses.
13
Programa usando classe Circulo
Instancia objeto c
do tipo Circulo
Chama método
exibeDados do objeto c
14
Métodos com parâmetros
15
Alterando o programa
Chamando método
com parâmetro
16
Variáveis de instância x
Variáveis locais
18
Relembrando: Encapsulamento
19
Encapsulamento
20
Visualização de métodos e atributos
Modificadores de acesso
– Public: em geral, métodos públicos de interface
com cliente;
– Private: métodos ou atributos não acessíveis fora
da classe;
Recomendação: todas as variáveis de
instância sejam private
21
Métodos Set e Get
Variável de instância
Método set
(altera)
Método get
(informa)
22
Boa prática de programação
23
Importância do encapsulamento
24
Alterando o método Set
25
Exercício: Altere a classe Circulo
27
Inicializando variáveis de instância
28
Construtor
O que é?
– Método especial que cria ou instancia novos
objetos assegurando seu estado consistente;
– Objetivo: Inicializar variáveis de instância;
– Tem o mesmo nome da classe;
Boa prática. Inicialize as variáveis de instância
de uma classe no seu construtor.
29
Construtores Java
30
Classe Circulo com construtor
31
Usando classe com construtor
32
Exercício: Altere a classe Circulo
34
Classe Circulo.java
Inicio da declaração da classe Circulo
Atributos
Aloca memória inicializa atributos do
obj.
Métodos
Altera atributo com segurança
(encapsulamento)
circunferência
37
Saída jGrasp
38