La composición (en OOP) es un modo de combinar objetos simples y crear objetos complejos.
Cuando un objeto es "Compuesto" se dice que tiene una relacion "tiene un". Un ejemplo del mundo real de composición seria por ejemplo, un automóvil (ejemplo tomado de wikipedia). Se puede decir que que un automóvil "tiene un/a" rueda, volante, asiento, motor, etc.
Hasta aquí todo bien... es un concepto simple,y en muchos casos se le considera una de las razón "clave" por la que la OOP es una "buena idea". Por lo tanto uno esperaría que un lenguaje como Java tuviera composición pero... la tiene? O solo tiene agregación?
La agregación, difiere de la composición en que no implica "pertenencia". En composición,cuando el objeto "dueño" es destruido, también es destruido el objeto contenido. En agregación, esto no es necesariamente cierto:
Por ejemplo (otro ejemplo tomado de wikipedia), una universidad tiene varios departamentos, y cada departamento tiene un numero de profesores. Si la universidad cierra, los departamentos dejaran de existir, pero los profesores en esos departamentos continuaran existiendo.
Comentarios recientes
hace 54 mins 26 segs
hace 1 hora 20 mins
hace 3 horas 8 mins
hace 10 horas 51 mins
hace 13 horas 43 mins
hace 15 horas 11 mins
hace 15 horas 17 mins
hace 15 horas 57 mins
hace 1 día 39 mins
hace 1 día 45 mins