3. Introdução
Considere um programa para um banco.
◦Quais seriam os seus elementos relevantes para
o desenvolvimento?
- Conta bancária;
- Clientes;
- Seguros,
- etc.
4. Considere um programa para um banco.
◦Quais seriam os seus elementos relevantes para
o desenvolvimento?
- Conta bancária;
- Clientes;
- Seguros,
- etc.
Introdução
5. O que toda conta possui e é relevante?
Introdução
6. O que toda conta possui e é relevante?
◦Número da conta;
◦Nome do dono da conta;
◦Saldo;
◦Limite.
Introdução
7. O que toda conta faz e é importante?
Introdução
8. O que toda conta faz e é importante?
◦Sacar;
◦Depositar;
◦Imprimir o nome do dono da conta;
◦Devolver o saldo atual;
◦Transferir uma quantidade para uma outra conta;
◦Devolver o tipo de conta.
Introdução
13. A palavra classe vem da taxonomia da
biologia.
◦Todos os seres vivos de uma mesma classe biológica
têm uma série de atributos e comportamentos em
comum.
Introdução
14. A palavra classe vem da taxonomia da
biologia.
◦Todos os seres vivos de uma mesma classe biológica
têm uma série de atributos e comportamentos em
comum.
◦No entanto, podem podem variar nos valores
desses atributos e como realizam
esses comportamentos
Introdução
21. Introdução
Receita de Bolo Bolo de Chocolate
Cachorro Bidu
Time de Futebol Corinthians
Classe Objeto (Instância)
22. Criando a classe Conta com os atributos que
descrevem a classe.
Uma classe em Java
23. Uma classe em Java
Adicionando métodos, ou seja, os
comportamentos da classe
24. Utilizando a classe Conta
Criação do objeto
Acesso aos atributos da classe
mandar uma mensagem ao objeto: invocação de
método
Uma classe em Java
33. Objetos são conceitos que têm identidade,
estado e comportamento.
Pode-se pensar sobre o mundo real como
uma coleção de objetos relacionados.
Objetos
34. Um programa Orientado a Objetos possui:
◦objetos se comunicando através de troca de
mensagens
Objetos
37. Exercício
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
Use java.lang.Math.PI (Math.PI)
38. Quando declaramos uma variável para associar
a um objeto, ela armazena uma referência.
É por isso que precisamos usar new depois de
declarada a variável
Objetos e Referências
41. Implemente um método chamado copia que
copie todos os atributos de um objeto para
outro e que pertençam à mesma classe.
O objetivo deste método é que, ao final de sua
execução, ambos objetos possuam os mesmos
atributos.
Exercício
42. Também podem ser atribuídos valores default
no momento da criação da classe:
Atributos
43. 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 um método recebeAumento que aumenta
o salario do funcionário de acordo com o
parâmetro passado como argumento. Crie
também um métodocalculaGanhoAnual, que
não recebe parâmetro algum, devolvendo o
valor do salário multiplicado por 12.
Transforme o modelo acima em uma classe
Exercício
44. Crie um método mostra(), que não recebe nem
devolve parâmetro algum e simplesmente
imprime todos os atributos do nosso
funcionário.
Construa dois funcionários com o new e
compare-os com o ==. E se eles tiverem os
mesmos atributos?
Crie duas referências para
o mesmo funcionário, compare-os com o ==.
Exercício
45. Classe: Pessoa
Atributos: nome, idade.
Método: void fazAniversario()
Crie uma pessoa, coloque seu nome e idade
iniciais, faça alguns aniversários (aumentando a
idade) e imprima seu nome e sua idade.
Exercício
46. Exercício
a) Um método que permita verificar se dois países são iguais. Dois países são iguais se
tiverem o mesmo nome e a mesma capital.
b) Um método que lista quais outros países fazem fronteira (note que um país não pode
fazer fronteira com ele mesmo);
c) Um método que receba um outro país como parâmetro e retorne uma lista de
vizinhos comuns aos dois países.
47. Classe: Porta
Atributos: aberta, cor, dimensaoX, dimensaoY,
dimensaoZ
Métodos:
◦void abre()
◦void fecha()
◦void pinta(String s)
◦boolean estaAberta()
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.
Exercício
48. Classe: Casa
Atributos: cor, porta1, porta2, porta3 Método:
◦void pinta(String s),
◦int quantasPortasEstaoAbertas()
Crie uma casa e pinte-a. Crie três portas e
coloque-as na casa; abra e feche as mesmas
como desejar. Utilize o
método quantasPortasEstaoAbertas para
imprimir o número de portas abertas.
Exercício
49. Desenvolva um jogo em que um robô deve
perseguir um gato. Ambos elementos
armazenam coordenadas (x,y). O gato possui
ainda seu nome e cor do pelo, enquanto que o
robô possui seu nome-código.
O gato somente anda em diagonal, sendo que
a cada passo define aleatoriamente seu rumo.
O robô sempre anda no sentido de diminuir a
sua distância em relação ao gato.
Este jogo acontece em um tabuleiro, que
consiste em uma matriz nxn e possui um gato
e um robô movimentando em sua parte
superior.
Exercício
50. 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