aula programação orientada a objetos em java

42
Programação Orientada a Objetos Professor Eng. Ms. Will Roger Pereira 1

Category:

Education


8 download

TRANSCRIPT

Page 1: Aula Programação Orientada a Objetos em Java

Programação Orientada a

Objetos

Professor Eng. Ms. Will Roger Pereira

1

Page 2: Aula Programação Orientada a Objetos em Java

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

Page 3: Aula Programação Orientada a Objetos em Java

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

Page 4: Aula Programação Orientada a Objetos em Java

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

Page 5: Aula Programação Orientada a Objetos em Java

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

Page 6: Aula Programação Orientada a Objetos em Java

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

Page 7: Aula Programação Orientada a Objetos em Java

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

Page 8: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..1

Programando classe Teclado

8

Page 9: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..1

Programando classe Computador:

Sem agregação

9

Page 10: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..1

Programando classe Computador:

Adicionando Agregação

10

Continua

Page 11: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..1

Programando classe Computador:

Adicionando Agregação

11

Continua

Continuação Computador

Page 12: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..1

Programando classe Computador:

Adicionando Agregação

12

Continuação Computador

Page 13: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..1

Classe Principal

13

Page 14: Aula Programação Orientada a Objetos em Java

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

Page 15: Aula Programação Orientada a Objetos em Java

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

Page 16: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 1

Programando classe Teclado

16

Page 17: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 1

Programando classe Computador:

Sem agregação

17

Page 18: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 1

Programando classe Computador:

Adicionando Agregação

18

Page 19: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 1

Classe Principal

19

Page 20: Aula Programação Orientada a Objetos em Java

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

Page 21: Aula Programação Orientada a Objetos em Java

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

Page 22: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..N

Programando classe Teclado

22

Page 23: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..N

Programando classe Computador:

Sem agregação

23

Page 24: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..N

Programando classe Computador:

Adicionando Agregação

24 Continua

Page 25: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..N

Programando classe Computador:

Adicionando Agregação

25

Continua

Continuação Computador

Page 26: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..N

Programando classe Computador:

Adicionando Agregação

26

Continuação Computador

Page 27: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..N

Classe Principal

27

Page 28: Aula Programação Orientada a Objetos em Java

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

Page 29: Aula Programação Orientada a Objetos em Java

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

Page 30: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..*

Programando classe Teclado

30

Page 31: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..*

Programando classe Computador:

Sem agregação

31

Page 32: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..*

Programando classe Computador:

Adicionando Agregação

32 Continua

Page 33: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..*

Programando classe Computador:

Adicionando Agregação

33

Continuação Computador

Page 34: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 0..*

Classe Principal

34

Page 35: Aula Programação Orientada a Objetos em Java

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

Page 36: Aula Programação Orientada a Objetos em Java

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

Page 37: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 1..*

Programando classe Teclado

37

Page 38: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 1..*

Programando classe Computador:

Sem agregação

38

Page 39: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 1..*

Programando classe Computador:

Adicionando Agregação

39

Continua

Page 40: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 1..*

Programando classe Computador:

Adicionando Agregação

40

Continuação Computador

Continua

Page 41: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 1..*

Programando classe Computador:

Adicionando Agregação

41

Continuação Computador

Page 42: Aula Programação Orientada a Objetos em Java

Agregação: Multiplicidade 1..*

Classe Principal

42