Cargando



Java - Composición de Objetos

En este tutorial definiremos que es la composición de objetos y como se construye, además de algunos conceptos asociados.


jul 13 2014 00:44
Avanzado
jul 13 2014 19:59
El universo de un programa hecho en Java es muy grande, a pesar de ser un lenguaje orientado a objetos es posible realizar programas que cumplen con la sintaxis mas no con la filosofía, es por ello que dentro de esta inmensidad de universo debemos estar muy claros en conceptos clave que tal vez no sean lo primero que se nos viene a la mente al pensar en desarrollar algo.

Uno de los conceptos que debemos conocer es la composición de objetos, esto nos puede ayudar a ver el manejo de objetos de otra forma a la que estamos acostumbrados y hacernos más consciente de la orientación a objetos e incorporarla más a nuestra filosofía de trabajo.

¿Qué es la Composición de Objetos?


La composición de objetos no es más que la relación que se crea cuando un objeto contiene a otro objeto, esto se da en casos cuando por ejemplo tenemos una clase y dentro hemos generado un atributo de tipo String, al ser String una clase el atributo pasaría a ser un objeto y al instanciar la clase que lo incluye tendríamos un objeto de nuestra clase y uno de sus atributos es otro objeto.

Relación de agregación
La composición en sí es un caso especial de la agregación esta relación se da al tener una condición de posesión de un objeto sobre otro, por lo que el objeto dueño es llamado un objeto agreativo o “agregador”, al igual que su clase padre y el objeto que es poseído por este es llamado un objeto “agregado” al igual que la clase de donde fue instanciado.


Esta relación puede darse entre múltiples objetos pero cuando se da exclusivamente entre dos objetos es cuando lo llamamos composición.

Un ejemplo de cómo podemos ver esto en un caso un poco más sencillo, es si por ejemplo tenemos una clase estudiante y este tiene un atributo nombre que resulta ser una clase, como sabemos que cada estudiante tendrá un nombre es un caso de composición, pero si a la misma clase le agregamos una propiedad dirección y esta puede ser contenida por varios estudiantes a la vez, entonces estamos hablando de una agregación.

Veamos el siguiente gráfico que lo ilustra:

java_comp_obj.jpg


Nos fijamos que la relación entre Nombre y Estudiante es de 1 a 1 en cambio de Estudiante a Dirección hay una relación de uno a varios, esto lo denotamos por el uso de un rombo relleno para el primer caso y de un rombo vacío para el segundo.

Como vemos el concepto puede lucir complejo pero al momento de definir las clases es bastante fácil, sobre todo si lo vemos desde un punto de vista gráfico donde eliminamos las palabras complejas.

Tenemos un nuevo conocimiento que nos lleva a adentrarnos un poco más en lo que podemos saber de la filosofía de la orientación a objetos, es muy importante conocer todo esto, ya que así podremos crear programas verdaderamente orientados a objetos y con ello sacar todo el provecho que ofrece Java como lenguaje de programación.

¿Te ayudó este Tutorial?


1 Comentarios


Maxi Jones
oct 04 2016 15:19

Muchas gracias me sirivio mucho!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X