Aula Programação Orientada a Objetos em Java

363 visualizações

Publicada em

programação orientada a objetos em java 2015

Publicada em: Educação
  • Seja o primeiro a comentar

Aula Programação Orientada a Objetos em Java

  1. 1. Programação Orientada a Objetos Professor Eng. Ms. Will Roger Pereira 1
  2. 2. Objetivos da Aula  Relacionamentos interclasse: Agregação;  Agregação: Multiplicidade 0..1;  Agregação: Multiplicidade 1;  Agregação: Multiplicidade 0..N;  Agregação: Multiplicidade 0..*;  Agregação: Multiplicidade 1..*. 2
  3. 3. Agregação  Indicada para representar um relacionamento entre “parte” e “todo”, onde o “todo” é formado por partes:  Este relacionamento é caracterizado pela parte poder existir sem o todo, ou seja, a parte deve existir antes que o vínculo seja realizado;  A Parte não precisa saber a qual Todo ela está agregando. 3
  4. 4. Agregação  Para que a parte possa existir sem o todo, ela deve estar criada antes de estar agregada ao todo;  Sua referência deve ser conhecida em outra parte do programa, de modo que, se o todo acabar, a parte continue podendo ser referenciada;  Ex: Um Teclado e um Computador. O Teclado pode fazer parte de um Computador. Porém, deve existir antes de ser ligado no Computador. Também, pode ser desligado de um Computador para ser ligado a outro Computador. Se o Computador for jogado fora, o Teclado pode ser aproveitado. 4
  5. 5. Agregação  Naturalmente, a estrutura de dados utilizada, bem como o local do vínculo dependerão da multiplicidade;  Porém, antes de se realizar a agregação da “parte” ao “todo”, a “parte” já deve estar criada e sua referência deve ser conhecida  Ex: No método main;  O que será agregado(vinculado) ao objeto “todo” será a referência que representa o objeto “parte”;  Deste modo, esta referência será argumento/parâmetro de métodos e/ou construtores. 5
  6. 6. Agregação: Multiplicidade 0..1  Na multiplicidade 0..1, o “todo” pode nascer sem possuir nenhuma parte;  Ao longo de seu ciclo de vida, uma “parte” pode agregar ao “todo”, com o “todo” sabendo qual “parte” estará se relacionando com ele;  É de responsabilidade do desenvolvedor prover métodos para vínculo, substituição e/ou remoção da parte. 6
  7. 7. Agregação: Multiplicidade 0..1  Um Teclado agrega a um Computador;  O Computador pode ter 0 ou 1 Teclado;  O vínculo se dará no método instalaTeclado;  Primeiro programe as partes, depois o relacionamento;  Crie o Teclado, para depois vincular ao Computador. 7
  8. 8. Agregação: Multiplicidade 0..1 Programando classe Teclado 8
  9. 9. Agregação: Multiplicidade 0..1 Programando classe Computador: Sem agregação 9
  10. 10. Agregação: Multiplicidade 0..1 Programando classe Computador: Adicionando Agregação 10 Continua
  11. 11. Agregação: Multiplicidade 0..1 Programando classe Computador: Adicionando Agregação 11 Continua Continuação Computador
  12. 12. Agregação: Multiplicidade 0..1 Programando classe Computador: Adicionando Agregação 12 Continuação Computador
  13. 13. Agregação: Multiplicidade 0..1 Classe Principal 13
  14. 14. Agregação: Multiplicidade 1  Na multiplicidade 1, o “todo” DEVE nascer possuindo uma parte;  Assim sendo, neste caso, a parte deve existir antes do “todo”;  Ao longo de seu ciclo de vida, uma “parte” pode ser substituída, mas nunca removida;  É de responsabilidade do desenvolvedor prover métodos para substituição da parte. 14
  15. 15. Agregação: Multiplicidade 1  Um Teclado agrega a um Computador;  O Computador deve ter 1 Teclado;  O vínculo se dará no construtor;  Primeiro programe as partes, depois o relacionamento;  Crie o Teclado antes de criar o Computador. 15
  16. 16. Agregação: Multiplicidade 1 Programando classe Teclado 16
  17. 17. Agregação: Multiplicidade 1 Programando classe Computador: Sem agregação 17
  18. 18. Agregação: Multiplicidade 1 Programando classe Computador: Adicionando Agregação 18
  19. 19. Agregação: Multiplicidade 1 Classe Principal 19
  20. 20. Agregação: Multiplicidade 0..N  Na multiplicidade 0..N, o “todo” pode nascer sem possuir nenhuma parte;  Ao longo de seu ciclo de vida, N “partes” podem agregar ao “todo”, com o “todo” sabendo quais “partes” estarão se relacionando com ele;  É DE RESPONSABILIDADE DO DESENVOLVEDOR A MANUTENÇÃO DA MULTIPLICIDADE NO VETOR;  É de responsabilidade do desenvolvedor prover métodos para vínculo, substituição e/ou remoção da parte. 20
  21. 21. Agregação: Multiplicidade 0..N  Um Teclado agrega a um Computador;  O Computador pode ter de 0 a 3 Teclados;  O vínculo se dará no método addTeclado;  Primeiro programe as partes, depois o relacionamento;  Crie o Teclado, para depois vincular ao Computador. 21
  22. 22. Agregação: Multiplicidade 0..N Programando classe Teclado 22
  23. 23. Agregação: Multiplicidade 0..N Programando classe Computador: Sem agregação 23
  24. 24. Agregação: Multiplicidade 0..N Programando classe Computador: Adicionando Agregação 24Continua
  25. 25. Agregação: Multiplicidade 0..N Programando classe Computador: Adicionando Agregação 25 Continua Continuação Computador
  26. 26. Agregação: Multiplicidade 0..N Programando classe Computador: Adicionando Agregação 26 Continuação Computador
  27. 27. Agregação: Multiplicidade 0..N Classe Principal 27
  28. 28. Agregação: Multiplicidade 0..*  Na multiplicidade 0..*, o “todo” pode nascer sem possuir nenhuma parte;  Ao longo de seu ciclo de vida, muitas “partes” podem agregar ao “todo”, com o “todo” sabendo quais “partes” estarão se relacionando com ele;  É DE RESPONSABILIDADE DO DESENVOLVEDOR A MANUTENÇÃO DA LISTA;  É de responsabilidade do desenvolvedor prover métodos para vínculo, substituição e/ou remoção da parte. 28
  29. 29. Agregação: Multiplicidade 0..*  Um Teclado agrega a um Computador;  O Computador pode ter muitos Teclados;  O vínculo se dará no método addTeclado;  Primeiro programe as partes, depois o relacionamento;  Crie o Teclado, para depois vincular ao Computador. 29
  30. 30. Agregação: Multiplicidade 0..* Programando classe Teclado 30
  31. 31. Agregação: Multiplicidade 0..* Programando classe Computador: Sem agregação 31
  32. 32. Agregação: Multiplicidade 0..* Programando classe Computador: Adicionando Agregação 32Continua
  33. 33. Agregação: Multiplicidade 0..* Programando classe Computador: Adicionando Agregação 33 Continuação Computador
  34. 34. Agregação: Multiplicidade 0..* Classe Principal 34
  35. 35. Agregação: Multiplicidade 1..*  Na multiplicidade 1..*, o “todo” DEVE nascer possuindo uma parte;  Ao longo de seu ciclo de vida, muitas “partes” podem agregar ao “todo”, com o “todo” sabendo quais “partes” estarão se relacionando com ele;  É DE RESPONSABILIDADE DO DESENVOLVEDOR A MANUTENÇÃO DA LISTA;  É de responsabilidade do desenvolvedor prover métodos para vínculo, substituição e/ou remoção da parte. 35
  36. 36. Agregação: Multiplicidade 1..*  Um Teclado agrega a um Computador;  O Computador pode ter um ou mais Teclados;  O vínculo se dará no construtor E no método addTeclado;  Primeiro programe as partes, depois o relacionamento;  Crie o Teclado, para depois vincular ao Computador. 36
  37. 37. Agregação: Multiplicidade 1..* Programando classe Teclado 37
  38. 38. Agregação: Multiplicidade 1..* Programando classe Computador: Sem agregação 38
  39. 39. Agregação: Multiplicidade 1..* Programando classe Computador: Adicionando Agregação 39 Continua
  40. 40. Agregação: Multiplicidade 1..* Programando classe Computador: Adicionando Agregação 40 Continuação Computador Continua
  41. 41. Agregação: Multiplicidade 1..* Programando classe Computador: Adicionando Agregação 41 Continuação Computador
  42. 42. Agregação: Multiplicidade 1..* Classe Principal 42

×