ALGORITMOS E
PROGRAMAÇÃO I
Classes e Atributos
Roteiro
2
Classes no BlueJ, 6
Definição de classe, 16
Instanciação, 19
Atributos, 21
Tipos de Dados, 22
Declaração, 25
Estrutura de uma classe, 23
Identificadores, 24
Lista de Exemplos
3
Lampada, 11, 28
Fração, 13
Quadrado, 15
Relembrando...
4
Considerando o exemplo da Lâmpada,
onde estão os objetos na figura abaixo?
Relembrando...
5
Como criamos os objetos?
C Algumas conclusões
6
Todas as lâmpadas tem o mesmo
comportamento.
É razoável supor que todas as lâmpadas
tenham a mesma estrutura interna.
Mesmo comportamento + mesma
estrutura = mesma categoria ou classe
de objetos.
Objetos da mesma classe são definidos
através de uma descrição de classe.
C Classes e Objetos
7
Classe
Objetos
C Classes e Objetos
8
Classe
Objetos
C Classes e Objetos
9
Classe
Objetos
z Pensando....
10
O que uma Lâmpada precisa armazenar?
z Pensando....
11
O que uma Lâmpada precisa armazenar?
Um valor que possibilite a representação
do seu estado: apagada ou acesa.
Lampada
estado
Classe
lampada1:
lampada2:
lampada3:
acesa
apagada
apagada
Objetos
z Pensando....
12
O que uma Fração precisa armazenar?
z Pensando....
13
O que uma Fração precisa armazenar?
Um
valor que possibilite a representação
do seu numerador e outro valor para
representar o seu denominador.
Fracao
numerador
Classe
denominador
fracao1:
fracao2:
fracao3:
fracao4:
fracao5:
1
5
32
3
44
2
2
7
123
200
Objetos
z Pensando....
14
O que um Quadrado precisa armazenar?
z Pensando....
15
O que um Quadrado precisa armazenar?
Um
valor que possibilite a representação
do seu lado.
Quadrado
lado
Classe
quadrado1:
quadrado2:
20.4
4.3
Objetos
C Algumas conclusões
16
Uma classe define um conjunto de
objetos que possuem um mesmo
comportamento e uma mesma
estrutura.
Os objetos precisam armazenar valores.
A definição dos valores que os objetos
podem armazenar é feita na classe,
através da declaração de atributos.
17
Formalizando…
C Classes
18
Uma classe define, em um único local,
características comuns a todos os objetos
criados a partir desta classe.
C Classes (2)
19
Os objetos são chamados de instâncias.
A operação de criação é chamada de
instanciação.
C Classes (3)
20
As classes definem atributos que são
utilizados pelos objetos para armazenar
valores.
C Atributos
21
Atributos armazenam dados que podem ser
alterados pelas mensagens dos objetos.
O nome de um atributo é denominado
identificador.
Deve-se definir também o tipo de dado
que o atributo armazena.
Números
inteiros
Números reais
Valores lógicos (verdadeiro ou falso)
etc...
C Tipos de dados
22
Números inteiros: valores numéricos
que pertençam ao conjunto dos números
inteiros (negativos, nulos ou positivos).
2, -44, 0, 314
Números reais: valores numéricos que
pertençam ao conjunto dos números
reais (negativos, nulos ou positivos).
3.14, 120.45, -32.87
Valores lógicos: assumem os valores
true (verdadeiro) ou false (falso).
C Estrutura de uma classe
23
public class <NomeDaClasse>
{
<declaração dos atributos>
<definição dos métodos>
}
C Identificadores de classes
24
Identificadores válidos
Devem iniciar com uma letra maiúscula.
Usar uma letra maiúscula para o início de
cada palavra no nome da classe
Exemplo: NomeDaClasse.
Java faz diferenciação entre maiúsculas e minúsculas!
C Declaração dos atributos
25
Identificadores válidos
Devem iniciar com uma letra minúscula,
demais palavras iniciam em maiúsculas
Atributos são compostos por substantivos ou
adjetivos:
nome, saldo, enderecoComercial
Tipos de dados
Inteiro: int
Real: double
Lógico: boolean
C Declaração dos atributos
26
private
<tipo> <identificador>;
Exemplos:
private
int idade;
private double salario;
C Declaração dos atributos
27
O que significa private?
Significa que os dados somente podem ser
acessados pelos objetos aos quais
pertencem.
Atributos são sempre private.
z Classe Lampada
28
Como iremos codificar a classe
Lampada?
Quais atributos ela necessita?
z Classe Lampada
29
public class Lampada
{
private boolean estado;
<declaração dos métodos>
}
Exercícios
30
Implemente as estruturas de classe para os
exemplos apresentados nos slides
anteriores:
Fração
Quadrado
Exercícios
31
Implemente as estruturas de classe para os
exemplos apresentados nas aulas
anteriores:
Lâmpada com dimmer
Parquímetro
Carro
Conta