Your SlideShare is downloading. ×
0
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Introdução à Orientação a Objeto em Java
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Introdução à Orientação a Objeto em Java

151

Published on

Introdução aos conceitos básicos da Orientação a Objeto, usando Java como linguagem de programação.

Introdução aos conceitos básicos da Orientação a Objeto, usando Java como linguagem de programação.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
151
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Orientação à Objetos Bruno Silva Introdução em Java
  • 2. Definição • • Orientação a Objetos: abstração de conceitos do mundo real. Conceitos envolvidos: – – – – – Classe Objeto Atributo Método ...
  • 3. Classe • • • Define as características comuns de um conjunto de objetos; É uma generalização; Uma receita de bolo :D
  • 4. Receita de macacos • Classe Macaco (generalizando os macacos..) – Quais atributos definem um macaco qualquer? • • • • – Possui Nome Possui uma altura Possui um peso ... O que um macaco pode fazer qualquer? • • • • • Anda Respira Come Banana Programa(wtf?) ..
  • 5. Atributos • Quais atributos deve ter a Classe Macaco? Def.: Os atributos descrevem a Classe, modelando-a • Macacos.. – – – – Possuem Nome? Possuem uma altura? Possuem um peso? … Class Macaco { String nome; Double altura; Double peso; }
  • 6. Métodos da classe • O que qualquer macaco pode fazer? • • • • • • Andar Respirar Comer Banana Programar(!?) .. Métodos definem, então, as habilidades que os objetos de uma classe terão.
  • 7. Métodos da classe • Método subir arvore public void subirArvore() { System.out.println(“To vendo uma banana daqui!”) } • Método programar public void programar() { System.out.println(“debugar isso aqui..”) } • Método caminhar public void caminhar () { System.out.println(“é mais fácil pular entre árvores..”) }
  • 8. Classe Macaco (até agora) public Class Macaco { String nome; Double altura; Double peso; public void subirArvore() { System.out.println(“To vendo uma banana daqui!”) } public void programar() { System.out.println(“debugar isso aqui..”) } public void caminhar() { System.out.println(“é mais fácil pular entre árvores..”) } }
  • 9. Crie uma classe para Leão...
  • 10. Voltando... • Tá faltando algo! – Como criar e diferenciar os macaco?
  • 11. Como criar Objetos • Objetos são “materialização” da nossa “receita de bolo”. – Objetos são “feitos” a partir da Classe (receita). – Essa materialização se dá através do método construtor.
  • 12. Método construtor?! Wtf? – Métodos construtores de uma classe deve: • Possuir o mesmo nome da classe. • Receber parâmetros, caso desejem preencher atributos. • Não devem retornar nada, pois criam objetos :D – Para classe Macaco teriamos: public Macaco (String nomeMacaco, Double alturaMacaco, Double pesoMacaco) { nome = nomeMacaco ; altura = alturaMacaco; peso = pesoMacaco; }
  • 13. Mas depois de construir? Oq eu faço? • Variáveis – Variáveis apontam para objetos. – Variáveis só podem apontar para um de um tipo específico de objeto (uma classe) • Isso pq Java é fortemente tipado
  • 14. Declarando variável • Código: Macaco macacoOrelhudo; – Define uma varíavel que pode apontar para objetos que tenham origem a classe Macaco. – Variável possui como nome “macacoOrelhudo” – Ainda não aponta para nenhum macaco, visto que ele não foi criado.
  • 15. Materializando um macaco.. • Dentro de um código que irá utilizar um macaco.. Linha1 Linha2 Linha3 Linha4 String nome = “Sorriso Colgate” Double altura = 1.50; Double peso = 50.00; Macaco macacoSorridente = new Macaco(nome, altura, peso); Na linha 4 do código, são passados os parâmetros para a materialização (construção) de um objeto macaco, que será apontado pela variável macacoSorridente. Assim, o objeto macaco criado será referenciado por esta variável.
  • 16. Tchaarammm! macacoSorridente = Temos uma referência para o macaco! o/ A partir de agora, posso mandar esse macaco andar, programar, comer banana... Sem a variável, não seria possível ter controle do macaco.
  • 17. Programa final (Macaco.java) public Class Macaco { String nome; Double altura; Double peso; public Macaco (String nomeMacaco, Double alturaMacaco, Double pesoMacaco) { nome = nomeMacaco ; altura = alturaMacaco; peso = pesoMacaco; } public void subirArvore() { System.out.println(“To vendo uma banana daqui!”) } public void programar() { System.out.println(“debugar isso aqui..”) } public void caminhar() { System.out.println(“é mais fácil pular entre árvores..”) } //motor do código, utiliza um macaco :D public static void main(String[] args) { String nome = “Sorriso Colgate” Double altura = 1.50; Double peso = 50.00; Macaco macacoSorridente = new Macaco(nome, altura, peso); macacoSorridente.andar(); } }
  • 18. Fim • Então até aqui já sabemos: – Definir uma classe básica – Referenciar objetos • Próximas tarefas: – Definir interação entre classes – Tipos de atributos e visibilidade (public/private /protected)

×