Cursos subvencionados para trabajadores
Realiza el curso gratis a través de tu empresa.
Cursos SubvencionadosDurante la ejecución de un programa, los diversos objetos que lo componen han de interactuar entre sí para lograr una serie de objetivos comunes.
Existen varios tipos de relaciones que pueden unir a los diferentes objetos, pero entre ellas destacan las relaciones de: asociación, todo/parte, y generalización/especialización.
Relaciones de Asociación
Serían relaciones generales, en las que un objeto realiza llamadas a los métodos de otro, interactuando con él.
Representan las relaciones con menos riqueza semántica.
Relaciones de Todo/Parte
Muchas veces una determinada entidad existe como conjunción de otras entidades, como un conglomerado de ellas. En este tipo de relaciones un objeto componente se integra en un objeto compuesto. La orientación a objetos recoge este tipo de relaciones como dos conceptos: la agregación y la composición.
La diferencia entre agregación y composición es que mientras que la composición se entiende que dura durante toda la vida del objeto componedor, en la agregación no tiene por qué ser así.
Ejemplo de agregación: un ordenador y sus periféricos. Los periféricos de un ordenador pueden estar o no, se pueden compartir entre ordenadores y no son propiedad de ningún ordenador.
Ejemplo de composición: un árbol y sus hojas. Un árbol está íntimamente ligado a sus hojas. Las hojas son propiedad exactamente de un árbol, no se pueden compartir entre árboles y cuando el árbol muere, las hojas lo hacen con él.
Relaciones de Generalización/Especialización
A veces sucede que dos clases tiene muchas de sus partes en común, lo que normalmente se abstrae en la creación de una tercera clase (padre de las dos) que reúne todas sus características comunes.
El ejemplo más extendido de este tipo de relaciones es la herencia, propiedad por la que una clase (clase hija) recoge aquellos métodos y atributos que una segunda clase (clase padre) ha especificado como "heredables".
Este tipo de relaciones es característico de la programación orientada a objetos.
En realidad, la generalización y la especialización son diferentes perspectivas del mismo concepto, la generalización es una perspectiva ascendente (bottom-up), mientras que la especialización es una perspectiva descendente (top-down).
Inscríbete ahora y accede a 1 unidades gratis
Evalua el curso de UML y accede a las 1 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....
Toda clase encapsula unos elementos (atributos y operaciones) que disponen de ciertos criterios de visibilidad y manipulación para otras clases.
Los elementos públicos(+) pueden ser usados por cualquier otra clase.
Los elementos privados(-) pueden ser usados sólo por la clase propietaria.
Los elementos protegidos(#) pueden ser usados por la subclases y por la clases del mismo paquete.
Cada plataforma de desarrollo (C++, Smalltalk, Java) desarrolla sus propias reglas con respecto a la visibilidad y manipulación de atributos y operaciones.
La notación UML especifica que todo atributo y operación de una clase ha de disponer de un indicador de visibilidad.

Inscríbete ahora y accede a 1 unidades gratis
Evalua el curso de UML y accede a las 1 unidades gratis con acceso completo al aula virtual donde podrás disfrutar de la inestimable ayuda del tutor y una gran variedad de recursos como videotutoriales, ejercicios resueltos, foros, enlaces, bibliografía, etc....
Copyright 2008© ADRInfor S.L. Logroño | Tel: 941250116 Fax: 941236805 | Email | Politica de Privacidad