Un diagrama de clases sirve para visualizar las relaciones entre las clases que involucran el sistema, las cuales pueden ser asociativas, de herencia, de uso y de contención.
Un diagrama de clase incluye los siguientes elementos:
- Clase: atributos, métodos y visibilidad.
- Relaciones: Herencia, Composición, Agregación, Asociación y Uso.
Clase
Se encapsula toda la información de un objeto (un objeto es una instancia de una clase)
Atributos y Métodos:
- Atributos:Los atributos de una Clase pueden ser de tres tipos, de acuerdo a su visibilidad:
- public (+,
): Indica que el atributo será visible tanto dentro como fuera de la clase, es decir, es accsesible desde todos lados.
- private (-,
): Indica que el atributo sólo será accesible desde dentro de la clase (sólo sus métodos lo pueden accesar).
- protected (#,
): Indica que el atributo no será accesible desde fuera de la clase, pero si podrá ser accesado por métodos de la clase además de las subclases que se deriven (ver herencia).
- public (+,
- Métodos:Los métodos u operaciones de una clase son la forma en como ésta interactúa con su entorno, éstos pueden tener las características:
- public (+,
): Indica que el método será visible tanto dentro como fuera de la clase, es decir, es accsesible desde todos lados.
- private (-,
): Indica que el método sólo será accesible desde dentro de la clase (sólo otros métodos de la clase lo pueden accesar).
- protected (#,
): Indica que el método no será accesible desde fuera de la clase, pero si podrá ser accesado por métodos de la clase además de métodos de las subclases que se deriven (ver herencia).
- public (+,
Relaciones entre Clases:
Herencia (Especialización/Generalización):

Dependencia o Instanciación (uso):
En UML, la cardinalidad de las relaciones indica el grado y nivel de dependencia, se anotan en cada extremo de la relación y éstas pueden ser:
- uno o muchos: 1..* (1..n)
- 0 o muchos: 0..* (0..n)
- número fijo: m (m denota el número).
Herencia (Especialización/Generalización):
Indica que una subclase hereda los métodos y atributos especificados por una Super Clase, por ende la Subclase además de poseer sus propios métodos y atributos, poseerá las características y atributos visibles de la Super Clase (public y protected), ejemplo:
Agregación:
Es un tipo de relación dinámica, en donde el tiempo de vida del objeto incluido es independiente del que lo incluye
Composición:
Es un tipo de relación estática, en donde el tiempo de vida del objeto incluido esta condicionado por el tiempo de vida del que lo incluye.
Asociación:
La relación entre clases conocida como Asociación, permite asociar objetos que colaboran entre si. Cabe destacar que no es una relación fuerte, es decir, el tiempo de vida de un objeto no depende del otro.
Representa un tipo de relación muy particular, en la que una clase es instanciada (su instanciación es dependiente de otro objeto/clase). Se denota por una flecha punteada.



No hay comentarios:
Publicar un comentario