2. DEFINICIONES
Una asociación representa la relación entre dos o
más clases.
Los objetos difícilmente servirán de algo por sí
solos, normalmente van a interactuar entre uno o
más tipos de objetos en un programa.
2
Mtl.LourdesCahuich-POO
3. ASOCIACIONES BINARIAS
Una asociación binaria es una relación entre dos
clases.
Existe una asociación binaria si un objeto de una
clase requiere un objeto de otra clase para hacer
su trabajo.
3
Mtl.LourdesCahuich-POO
4. EJEMPLO
Imaginemos un sistema escolar, en donde los
objetos involucrados son:
materias
estudiantes
docentes
¿Qué relaciones existen entre todos los objetos?
4
Mtl.LourdesCahuich-POO
6. ASOCIACIÓN UNA VÍA – DOS VÍAS
Una asociación de una vía indica la dirección en la
que se puede navegar de un objeto de una clase a
un objeto de otra clase.
Una asociación de dos vías indica una navegación
bidireccional entre objetos de dos clases
6
Mtl.LourdesCahuich-POO
8. MULTIPLICIDAD
Indica el número de instancias de una clase que
pueden ser asociadas a una sola instancia de otra
clase.
Existen tres tipos de multiplicidad:
1. uno a uno
2. uno a muchos
3. muchos a muchos
8
Mtl.LourdesCahuich-POO
9. ASOCIACIÓN UNO A UNO
Exactamente una instancia de cada clase está
relacionada solamente con una instancia de otra
clase.
Alumno Matrícula
1 1
9
Mtl.LourdesCahuich-POO
10. ASOCIACIÓN UNO A MUCHOS
Una asociación uno a muchos entre las clases A y
B, una instancia de la clase A puede estar
relacionada con muchas instancias de la clase B,
pero una instancia de la clase B está relacionada
solamente con una instancia de la clase A.
Alumno Materias
1 1…*
10
Mtl.LourdesCahuich-POO
11. ASOCIACIÓN MUCHOS A MUCHOS
En una asociación muchos a muchos entre las
clases A y B, una instancia de la clase A puede
estar relacionada con muchas instancias de la
clase B y una instancia de la clase B puede estar
relacionada con muchas instancias de la clase A.
Alumno Docente
1…* 1…*
11
Mtl.LourdesCahuich-POO
12. AGREGACIÓN
Es una forma especial de asociación.
Una agregación es una asociación entre las clases
A y B, donde cada instancia de la clase A contiene,
o está compuesta por, instancias de la clase B.
A la instancia de la clase A se le conoce como
agregada y a la instancia en la clase B se conoce
como componente.
12
Mtl.LourdesCahuich-POO
14. GENERALIZACIÓN - ESPECIALIZACIÓN
Representa una relación “es un”.
La especialización/generalización permite que la
clase A sea definida como especialización de otra
clase B, más general.
La clase A es llamada clase de especialización
La clase B es llamada clase de generalización
14
Mtl.LourdesCahuich-POO
16. APLICA LO APRENDIDO
Del objeto que modelaste con anterioridad, imagina
cómo podría interactuar con otros objetos del
mundo real (los nuevos objetos NO tienes que
modelarlos como clases)
Escribe al menos tres relaciones de tu objeto con
otros objetos.
Aplicando lo visto en clase, clasifica y dibuja qué
tipo de relaciones son las que imaginaste; explica
por qué las clasificaste de esa forma.
Envía por correo-e el documento con lo indicado
anteriormente, al docente al final de la clase.
16
Mtl.LourdesCahuich-POO