UML Domine el lenguaje de modelado más utilizado en la actualidad
3. COMENZARA MODELAR Alimentos para Felinos Juguetes para Gatos Cachorros Adultos Mayores Plumas T Cascabeles ph del Agua Presión del Agua ■n Alimento para Peces F igu ra 9. Ejemplos de relaciones de generalización, dependencia y asociación. Generalizaciones En este tipo de relación vamos a unir o conectar clases que comparten algunos atributos y comportamiento, mientras que individualmente tienen característi cas exclusivas. En el ejemplo que analizamos de la veterinaria ilustramos este concepto con los diferentes tipos de alimentos para mascotas. Como vimos, los alimentos para gatos y perros tienen conceptos en comiin, pero también tienen conceptos exclusivos de cada uno, lo que justamente hace que se diferencien unos de otros. Podemos afirmar, entonces, que los alimentos para gatos y los ali mentos para perros son una especialización de los alimentos para mascotas. Todos los alimentos para gatos son alimentos para mascotas, pero la relación inversa no se cumple. No todos los alimentos para mascotas son alimentos para gatos. Por ejemplo, seguramente un gato nos mirará extraño si en su plato de comida ponemos alimento para peces. Es por ello que a esta relación se la cono ce como relación Es-un {is-a relationshíp, en inglés). La generalización nos lleva a ubicar todas nuestras clases en una jerarquía, donde se establece para toda clase, a qué clase está especializando. Esta jerarquía es uno de los pilares de la Programación Orientada a Objetos, ya que permite introducir los conocidos constructores de Herencia y Polímorfísmo. Decimos que una clase hereda de otra cuando especializa su comportamiento. Siguiendo con el ejemplo de los alimentos, tenemos que la clase Alimento para Gatos hereda de la clase Alimento para Mascotas. Introduciendo aún más terminología orientada a objetos. 72
RkJQdWJsaXNoZXIy MjI4NDcx