ALGORITMOS E PROGRAMAÇÃO I Relembrando... Relembrando ...
ALGORITMOS E PROGRAMAÇÃO I Relembrando... Relembrando ...
ALGORITMOS E PROGRAMAÇÃO I Relembrando... Relembrando ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Relembrando</strong>...<br />
Considerando o exemplo da Lâmpada,<br />
onde estão os objetos na figura abaixo?<br />
<strong>ALGORITMOS</strong> E<br />
<strong>PROGRAMAÇÃO</strong> I<br />
Classes e Atributos<br />
<strong>Relembrando</strong>...<br />
Algumas conclusões<br />
Como criamos os objetos?<br />
Todas as lâmpadas tem o mesmo<br />
comportamento.<br />
É razoável supor que todas as lâmpadas<br />
tenham a mesma estrutura interna.<br />
Mesmo comportamento + mesma<br />
estrutura = mesma categoria ou classe<br />
de objetos.<br />
Objetos da mesma classe são definidos<br />
através de uma descrição de classe.<br />
Classes e Objetos<br />
Classes e Objetos<br />
Classe<br />
Classe<br />
Objetos<br />
Objetos
Classes e Objetos<br />
Pensando....<br />
O que uma Lâmpada precisa armazenar?<br />
Classe<br />
Objetos<br />
Pensando....<br />
Pensando....<br />
O que uma Lâmpada precisa armazenar?<br />
Um valor que possibilite a representação<br />
do seu estado de apagada ou acesa.<br />
O que uma Fração precisa armazenar?<br />
Lampada<br />
estado<br />
Classe<br />
lampada1:<br />
acesa<br />
lampada2:<br />
apagada<br />
lampada3:<br />
apagada<br />
Objetos<br />
Pensando....<br />
Pensando....<br />
O que uma Fração precisa armazenar?<br />
Um valor que possibilite a representação<br />
do seu numerador e outro valor para<br />
representar o seu denominador.<br />
O que um Quadrado precisa armazenar?<br />
Fracao<br />
numerador<br />
denominador<br />
Classe<br />
fracao1:<br />
1<br />
2<br />
fracao2:<br />
5<br />
2<br />
fracao3:<br />
32<br />
7<br />
fracao4:<br />
3<br />
123<br />
fracao5:<br />
44<br />
200<br />
Objetos
Pensando....<br />
Algumas conclusões<br />
O que um Quadrado precisa armazenar?<br />
Um valor que possibilite a representação<br />
do seu lado.<br />
Quadrado<br />
lado<br />
quadrado1:<br />
20.4<br />
Classe<br />
quadrado2:<br />
4.3<br />
Objetos<br />
Uma classe define um conjunto de<br />
objetos que possuem um mesmo<br />
comportamento e uma mesma<br />
estrutura.<br />
Os objetos precisam armazenar valores.<br />
A definição dos valores que os objetos<br />
podem armazenar é feita na classe,<br />
através da declaração de atributos.<br />
Classes<br />
Formalizando…<br />
Uma classe define, em um único local,<br />
características comuns a todos os objetos<br />
criados a partir desta classe.<br />
Classes<br />
Classes<br />
Os objetos são chamados de instâncias.<br />
A operação de criação é chamada de<br />
instanciação.<br />
As classes definem atributos que são<br />
utilizados pelos objetos para armazenar<br />
valores.
Atributos<br />
Tipos de dados<br />
Atributos armazenam dados que podem ser<br />
alterados pelas mensagens dos objetos.<br />
O nome de um atributo é denominado<br />
identificador.<br />
Deve-se definir também o tipo de dado<br />
que o atributo armazena.<br />
Números inteiros<br />
Números reais<br />
Valores lógicos (verdadeiro ou falso)<br />
Etc...<br />
Números inteiros: valores numéricos que<br />
pertençam ao conjunto dos números<br />
inteiros (negativos, nulos ou positivos).<br />
2, -44, 0, 314<br />
Números reais: valores numéricos que<br />
pertençam ao conjunto dos números<br />
reais (negativos, nulos ou positivos).<br />
3.14, 120.45, -32.87<br />
Valores lógicos: assumem os valores<br />
true (verdadeiro) ou false (falso).<br />
Estrutura de uma classe<br />
Identificadores de classes<br />
public class <br />
{<br />
<br />
<br />
}<br />
Identificadores válidos<br />
Devem iniciar com uma letra maiúscula, e<br />
tem uma letra maiúscula para cada palavra<br />
no nome da classe. Por exemplo:<br />
NomeDaClasse.<br />
Java faz diferenciação entre maiúsculas e minúsculas.<br />
Declaração dos atributos<br />
Declaração dos atributos<br />
Identificadores válidos<br />
Devem iniciar com uma letra minúscula,<br />
demais palavras iniciam em maiúsculas<br />
Variáveis são compostas por substantivos ou<br />
adjetivos:<br />
nome, saldo, enderecoComercial<br />
Tipos de dados<br />
Inteiro: int<br />
Real: double<br />
Lógico: boolean<br />
private ;<br />
Exemplos:<br />
private int idade;<br />
private double salario;
Declaração dos atributos<br />
O que significa private?<br />
Significa que os dados somente podem ser<br />
acessados pelos objetos aos quais<br />
pertencem.<br />
Atributos são sempre private.<br />
Classe Lampada<br />
Como iremos codificar a classe<br />
Lampada?<br />
Quais atributos ela necessita?<br />
Classe Lampada<br />
public class Lampada<br />
{<br />
private boolean estado;<br />
<br />
}<br />
Exercícios<br />
Implemente as estruturas de classe para os<br />
exemplos apresentados nos slides<br />
anteriores:<br />
Fracao<br />
Quadrado<br />
Implemente as estruturas de classe para os<br />
exemplos apresentados nas aulas<br />
anteriores:<br />
Parquimetro<br />
Carro<br />
Conta