Você está na página 1de 35

GCC110 Programao

Orientada a Objetos
Aula 2 Introduo a OO
Claudiane Maria Oliveira
claudianeoliveira@dcc.ufla.br

Como descreveriam esta cena?

Como descreveriam esta cena?


Provavelmente listando os objetos que nela se encontram.
Ou seja, ns entendemos o mundo atravs de objetos!

O que essas imagens tm em comum?

O que essas imagens tm em comum?

Ambas so objetos!
Objetos so uma forma de representarmos o mundo.

Em Programao Orientada a Objetos

Modelamos um problema ou
uma situao por meio dos
objetos relacionados a ele.

Controle de Porto

Voc precisa criar o


sistema pra fazer o
controle para
automatizar o
guindaste que pegam
os containers.

Quais objetos so
necessrios?

Precisa melhorar o Google+

Quais objetos
so necessrios?

Em POO ...
Pensamos primeiro nos objetos
que fazem parte do problema
No comeamos pensando nas
estruturas de dados ou rotinas.

Sistema Bancrio

Quais seriam os objetos deste sistema?

Objeto
Um objeto uma entidade que
formaliza o modo pelo qual
compreendemos algo no
domnio do problema
Portanto, podemos modelar
tudo que nos cerca como
objetos

Assim, podemos implementar


qualquer sistema usando POO

Atributo
Examinando de perto cada objeto
Como vocs descreveriam essa bola?

Controle de Porto

Quais so os
atributos
necessrios?

Domnio do Problema

Para cada problema pensamos em objetos diferentes


Ns modelamos objetos de acordo com o domnio
do problema

Comportamentos

Alm das caractersticas, objetos tambm podem ter


comportamentos.
Quais comportamentos um jogador em um jogo pode ter?

Controle de Porto

Quais so os
comportamentos
nesse exemplo?

Objeto
Um objeto possui atributos e mtodos
Os atributos so as caractersticas que o definem
Os comportamentos so implementados atravs de
mtodos (que so funes e procedimentos)

Objeto
Um objeto uma entidade que formaliza o modo pelo
qual compreendemos algo no domnio do problema.
O estado do objeto definido pelas propriedades que
ele possui e pelos valores que elas esto assumindo
O comportamento do objeto definido pela forma
como ele age e reage, em termos de mudana de seu
estado e o relacionamento com os demais objetos do
sistema

Mtodos com parmetros

O mtodo chutar pode ter o parmetro direo

Jogador
Atributos

Mtodos

necessrio definir os atributos e mtodos dos jogadores


Quantos tem? vivel?

Classe
Neymar, Messi, Tlio
podem ser objetos de um
jogo
Eles possuem os mesmos
atributos (caractersticas),
com valores diferentes
claro
Ou seja, so do mesmo
tipo ou categoria:
chamadas classes
Ao programar OO ns escrevemos / programamos classes e no objetos.

Classe e Objeto

O projeto o mesmo para


todas as casas, ou seja, a
classe.
Cada casa uma
diferente, ou seja, objeto

Classe e Objeto

Os engenheiros criam o projeto


do carro
Depois os carros so
produzidos de acordo com
aquele projeto
O projeto a classe, os carros
so objetos.

Classe e Objeto
Objeto: um indivduo nico dentro do conjunto que
a classe
Uma classe descreve um conjunto de objetos
semelhantes
Atributos e mtodos que resumem as caractersticas
comuns de vrios objetos
Diferena entre classe e objeto:
um objeto constitui uma entidade concreta com
tempo e espao de existncia, enquanto uma classe
to-somente uma abstrao

O que esses objetos tem em comum?

Todos eles so bolas e, portanto, possuem os mesmos


atributos: cor, tamanho, finalidade, dimetro, etc.
O que tem de diferente?
O valor de cada atributo
Podemos ter ento uma classe para representar todas as
bolas. E cada instncia da classe (objeto) ter valores
de atributos diferentes.

Classe bola

Uma nica classe bola poderia ser criada


E poderiam ser instanciados quatro objetos com
atributo cor com valores diferentes para representar
as quatro bolas acima em um sistema.

Bluej

BlueJ uma IDE Java projetada para fins didticos


Apesar de no ser usada na indstria bem
interessante para os primeiros contatos com os
conceitos de OO.

Esse um projeto de exemplo no BlueJ


Cada caixa representa uma classe.
Clicando com o boto direito nelas
possvel instanciar a classe, ou seja,
criar um objeto dela.

Cada caixa vermelha abaixo um


objeto instanciado.
Note que uma classe (Circulo) pode
ter mais de uma instncia (crculo1 e
crculo2).

Objetos possuem comportamentos


implementados como mtodos.
Clicando com o boto direito em
um objeto possvel chamar seus
mtodos, ou seja, exercer seus
comportamentos.

Cada objeto possui seu prprio


estado, ou seja, os valores de seus
atributos em um dado momento.
No BlueJ possvel visualizar o
estado do objeto clicando com o
boto direito no objeto e
acessando Inspecionar.

Objetos podem receber mensagens e tais


mensagens disparam seus comportamentos.
Enviar uma mensagem para um objeto o mesmo
que chamar ou invocar seu mtodo.
E existe um comando especial para criao de um
objeto (ser melhor estudado em breve).
O Scratchpad no BlueJ permite a execuo de
cdigo Java interpretado.
O exemplo abaixo mostra a criao de um
objeto meuCirculo da classe circulo. E, em
seguida, enviada a mensagem exibir()
para o objeto.

Bluej

Atividade
Defina classes, com seus atributos e
mtodos para os seguintes cenrios:
Locadora de veculos
Registro acadmico de um aluno
Conta bancria
Imobiliria

GCC110 Programao
Orientada a Objetos
Claudiane Maria Oliveira
claudianeoliveira@dcc.ufla.br