Los diagramas de clase los usamos para describir las clases de un sistema y sus relaciones entre ellas.
En este diagrama se muestra a la Clase 1, que hereda características de la Clase A e implementa operaciones de la interfaz Q
La Clase 2 instancia un objeto de la Clase 1 llamado atributo3, a esto se le llama composición (composition)
Esto en Java quedaría así:
/** * Class Clase_1 * */ public class Clase_1 extends Clase_A implements Interfaz_Q { // Fields // private int atributo1; // private int atributo2; // Methods // Constructors // Accessor Methods /** * Get the value of atributo1 * * @return the value of atributo1 */ private int getAtributo1 ( ) { return atributo1; } /** * Set the value of atributo1 * * */ private void setAtributo1 ( int value ) { atributo1 = value; } /** * Get the value of atributo2 * * @return the value of atributo2 */ private int getAtributo2 ( ) { return atributo2; } /** * Set the value of atributo2 * * */ private void setAtributo2 ( int value ) { atributo2 = value; } // Operations /** * * @return */ public operacion1 ( ) { } }
/**
* Class Clase_2 * */ public class Clase_2 { // Fields // private int atributo1; // private int atributo2; // private Clase_1 atributo3; // Methods // Constructors // Accessor Methods /** * Get the value of atributo1 * * @return the value of atributo1 */ private int getAtributo1 ( ) { return atributo1; } /** * Set the value of atributo1 * * */ private void setAtributo1 ( int value ) { atributo1 = value; } /** * Get the value of atributo2 * * @return the value of atributo2 */ private int getAtributo2 ( ) { return atributo2; } /** * Set the value of atributo2 * * */ private void setAtributo2 ( int value ) { atributo2 = value; } /** * Get the value of atributo3 * * @return the value of atributo3 */ private Clase_1 getAtributo3 ( ) { return atributo3; } /** * Set the value of atributo3 * * */ private void setAtributo3 ( Clase_1 value ) { atributo3 = value; } // Operations }
/** * Class Clase_A * */ public class Clase_A { // Fields // private int atributoA1; // Methods // Constructors // Accessor Methods /** * Get the value of atributoA1 * * @return the value of atributoA1 */ private int getAtributoA1 ( ) { return atributoA1; } /** * Set the value of atributoA1 * * */ private void setAtributoA1 ( int value ) { atributoA1 = value; } // Operations }
/** * Interface Interfaz_Q * */ public interface Interfaz_Q { // Methods // Constructors // Accessor Methods // Operations /** * * @return */ public operacion1 ( ); }
Todo muy sencillito, es el primer paso para comprender las relaciones. Todos los archivos fueron generados automáticamente con Umbrello después de dibujar el diagrama de clases.
3 comentarios:
Muy interesante porque no hiciste el blog hace dos años cuando quise programar en JAVA? CHINGAU
No muestra la imagen, podrias arreglarlo, bien... para los demas :)
Gracias
Ya está, nueva imagen. La anterior desapareció http://www.webshots.com no tengo idea por qué. Esta ahora está alojada en Picassa
Publicar un comentario