Você está na página 1de 20

RELACIONES ENTRE

CLASES

Curso: Programación Orientada a Objetos I


Ciclo: III
Carrera: Computación e Informática
Docente: Ing. Hobby Saavedra Rosas
saavedravh@hotmail.com
http://www.slideshare.net/hobbysaavedra
Ing. Hobby Saavedra Rosas 1
Clases, Propiedades y Métodos
+ Indica propiedades / métodos públicos
# Indica propiedades / métodos protegidos
- Indica propiedades / métodos privados

Representación de una clase:


Relaciones Entre Clases
En un diagrama de clases, los vínculos entre clases se representan por
líneas. A las que se les de diferentes características dependiendo del tipo de
relación.
Adicionalmente, en los extremos de estas líneas, puede colocarse la
descripción del Rol que asume cada clase en esa relación
Cardinalidad
También en los extremos de la línea, se coloca la Cardinalidad, que
describe cuántos objetos de cada clase pueden participar en la
relación.(mínimo...máximo)
La Cardinalidad de una relación puede ser:
- Ninguno o Muchos 0..* o * o (0..n)
- Uno o muchos 1..* o (1..n)
- Exactamente uno 1 o (1)
- Un número fijo m o (m)

- Un numero variable 2..6 o (2..6)


Cardinalidad
Ejemplo Cardinalidad :
Tipos de Relaciones entre Clases
1. Dependencia
• Es una relación de uso, es decir una clase (dependiente) usa a otra que la
necesita clase (independiente), para ejecutar algún proceso.
• Con la dependencia mostramos que un cambio en la clase independiente
puede afectar el funcionamiento de la clase dependiente, pero no al
contrario.

Ing. Hobby Saavedra Rosas 6


Implementación de la relación de Dependencia en Vb .Net

Ing. Hobby Saavedra Rosas 7


Tipos de Relaciones entre Clases
2. La asociación:
• Se define como “ una relación semántica entre dos o más clases que
especifica conexiones entre las instancias de estas clases”.

Los tipos de asociaciones entre clases presentes en un diagrama


estático son:
 Asociación binaria
 Asociación reflexiva
 Asociación n-aria
 Agregación
 Composición
Ing. Hobby Saavedra Rosas 8
Implementación de la relación de Asociación Binaria en VB 10.0

Asociación binaria

Ing. Hobby Saavedra Rosas 9


Implementación de la relación de Asociación Reflexiva en VB 10.0

Asociación Reflexiva

Ing. Hobby Saavedra Rosas 10


Implementación de la relación de Asociación de Agregación en Java

Asociación de Agregación • Representa la relación de un


todo y sus partes . Representado
por un rombo blanco
• El objeto que es parte del otro
puede existir ó no
del objeto que lo agrega a su
definición.

Ing. Hobby Saavedra Rosas 11


Implementación de la relación de Asociación Reflexiva en Java

Asociación de Composición
• La asociación es un tipo de agregación más fuerte,
representada por un rombo negro.
• Describe una relación entre un todo y sus partes de
modo que las existencias de las partes se perciben
como totalmente dependientes del todo.

Ing. Hobby Saavedra Rosas 12


Implementación de la relación de Asociación N- Aria en Java

Asociación N-Aria

Ing. Hobby Saavedra Rosas 13


Generalización/Especialización
• También denominada como Generalización / Especialización, porque se
refieren a dos técnicas que nos llevan a obtener el mismo resultado, la
herencia.

• La Generalización consiste en factorizar las propiedades comunes de un


conjunto de clases (clases hijas) en una clase más general (clase padre).

• Las clases hijas heredan atributos y operaciones que están disponibles en


sus clases padres. En general , la herencia ( Generalización o
Especialización )es una técnica muy eficaz para la extensión y reutilización
de código.

Ing. Hobby Saavedra Rosas 14


Implementación de la relación de Herencia en Java
Generalización/Especialización

Ing. Hobby Saavedra Rosas 15


myBase y me
 Podemos acceder a los métodos que

la clase padre usando la palabra base.

 Y para hacer referencia a los propios

métodos de la clase es con me.

Ing. Hobby Saavedra Rosas 16


EJERCICIO PROPUESTO

Ing. Hobby Saavedra Rosas 17


Ing. Hobby Saavedra Rosas 18
Ing. Hobby Saavedra Rosas 19
Ejemplo de Diagrama de Clases
Sistema Gestión Pedidos Inicial

Ing. Hobby Saavedra Rosas 20

Você também pode gostar