A composição é utilizada para agregações em que o período de vida da parte depende do tempo de vida do objeto agregador. O objeto agregador tem controle sobre a criação e destruição dos objetos agregados. Em suma, o objeto membro não pode existir para além da montagem.
Desenhe esta forma mais forte de agregação simplesmente fazendo o losango da agregação se tornar sólido (preto).
No nosso exemplo anterior, percebemos que o objeto ingresso não faz sentido se ele não estiver associado a uma venda. Não existe um ticket “em branco”. Não existe um ingresso que não tenha uma sessão, poltrona, filme e venda associado. Dessa forma, o relacionamento do ingresso com a venda é mais forte que uma simples agregação, é uma associação.
E quanto aos relacionamentos anteriores? Será que eles poderiam ser uma composição também?
Vamos ver os dois casos anteriores:
Um filme pode existir por si só, sem uma sessão associada? Sim, o filme pode ser um pré-lançamento, uma previsão, uma propaganda, então ele pode existir sim sem estar associado a uma sessão. Então, a relação entre sessão e filme não chega a ser uma composição.
E poltronas, podem existir poltronas disponíveis e reservadas sem estarem associadas a uma sessão? De forma alguma, o conceito e uso da disponibilidade de poltronas só faz sentido quando associadas a uma sessão de filme. Se a sessão de filme fosse cancelada, todas as reservas e disponibilidades de poltronas deixariam de existir. Dessa forma, o relacionamento é tão intenso que deve ser evoluído para uma composição.
Percebemos então que nosso diagrama deve ser atualizado para:
Evolução do diagrama anterior utilizando composições