aula programação orientada a objetos em java

Post on 25-Jul-2015

35 Views

Category:

Education

8 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Programação Orientada a

Objetos

Professor Eng. Ms. Will Roger Pereira

1

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

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

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

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

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

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

Agregação: Multiplicidade 0..1

Programando classe Teclado

8

Agregação: Multiplicidade 0..1

Programando classe Computador:

Sem agregação

9

Agregação: Multiplicidade 0..1

Programando classe Computador:

Adicionando Agregação

10

Continua

Agregação: Multiplicidade 0..1

Programando classe Computador:

Adicionando Agregação

11

Continua

Continuação Computador

Agregação: Multiplicidade 0..1

Programando classe Computador:

Adicionando Agregação

12

Continuação Computador

Agregação: Multiplicidade 0..1

Classe Principal

13

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

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

Agregação: Multiplicidade 1

Programando classe Teclado

16

Agregação: Multiplicidade 1

Programando classe Computador:

Sem agregação

17

Agregação: Multiplicidade 1

Programando classe Computador:

Adicionando Agregação

18

Agregação: Multiplicidade 1

Classe Principal

19

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

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

Agregação: Multiplicidade 0..N

Programando classe Teclado

22

Agregação: Multiplicidade 0..N

Programando classe Computador:

Sem agregação

23

Agregação: Multiplicidade 0..N

Programando classe Computador:

Adicionando Agregação

24 Continua

Agregação: Multiplicidade 0..N

Programando classe Computador:

Adicionando Agregação

25

Continua

Continuação Computador

Agregação: Multiplicidade 0..N

Programando classe Computador:

Adicionando Agregação

26

Continuação Computador

Agregação: Multiplicidade 0..N

Classe Principal

27

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

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

Agregação: Multiplicidade 0..*

Programando classe Teclado

30

Agregação: Multiplicidade 0..*

Programando classe Computador:

Sem agregação

31

Agregação: Multiplicidade 0..*

Programando classe Computador:

Adicionando Agregação

32 Continua

Agregação: Multiplicidade 0..*

Programando classe Computador:

Adicionando Agregação

33

Continuação Computador

Agregação: Multiplicidade 0..*

Classe Principal

34

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

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

Agregação: Multiplicidade 1..*

Programando classe Teclado

37

Agregação: Multiplicidade 1..*

Programando classe Computador:

Sem agregação

38

Agregação: Multiplicidade 1..*

Programando classe Computador:

Adicionando Agregação

39

Continua

Agregação: Multiplicidade 1..*

Programando classe Computador:

Adicionando Agregação

40

Continuação Computador

Continua

Agregação: Multiplicidade 1..*

Programando classe Computador:

Adicionando Agregação

41

Continuação Computador

Agregação: Multiplicidade 1..*

Classe Principal

42

top related