Mnnnnnnnn

Páginas: 5 (1189 palabras) Publicado: 28 de septiembre de 2012
182

 A. García-Beltrán y J.M. Arranz

17. Otras relaciones entre objetos
Objetivos: a) Describir otras relaciones entre clases distintas de la herencia como la asociación, la agregración, la composición o la anidación b) Interpretar el código fuente de una aplicación Java donde aparecen clases asociadas, agregadas, compuestas y anidadas c) Construir aplicaciones Java sencillas,convenientemente especificadas, que declaren y utilicen clases relacionadas entre sí. Además de la relación de herencia las clases empleadas dentro de una aplicación Java, los objetos pueden estar conectados dentro de un programa con otros tipos de relaciones. Estas relaciones puede ser persistentes si establecen si la comunicación entre objetos se registra de algún modo y por tanto puede ser utilizada encualquier momento. En el caso de relaciones no persistentes entonces el vínculo entre objetos desaparece tras ser empleado. En cualquier caso, en la mayor parte de los casos la resolución de un problema más o menos complejo exige la colaboración entre objetos. Esta colaboración se puede llevar a cabo mediante el establecimiento de relaciones entre clases (relación de herencia o generalización) oentre instancias (relación de asociación y relación todoparte: agregación y composición). En el capitulo anterior vimos la relación de herencia. En este capítulo se mostrarán otras relaciones entre objetos.

17.1. La asociación
En una asociación, dos instancias A y B relacionadas entre sí existen de forma independiente. No hay una relación fuerte. La creación o desaparición de uno de ellos implicaunicamente la creación o destrucción de la relación entre ellos y nunca la creación o destrucción del otro. Por ejemplo, un cliente puede tener varios pedidos de compra o ninguno. La relación de asociación expresa una relación (unidireccional o bidireccional) entre las instancias a partir de las clases conectadas. El sentido en que se recorre la asociación se denomina navegabilidad de laasociación. Cada extremo de la asociación se caracteriza por el rol o papel que juega en dicha relación el objeto situado en cada extremo. La cardinalidad o multiplicidad es el número mínimo y máximo de instancias que pueden relacionarse con la otra instancia del extremo opuesto de la relación. Por defecto es 1. El formato en el que se especifica es (mínima..máxima). Por ejemplo:  1 Uno y sólo uno (pordefecto)  0..1 Cero a uno. También (0,1)  M..N Desde M hasta N (enteros naturales)  0..* Cero a muchos  1..* Uno a muchos (al menos uno)  1,5,9 Uno o cinco o nueve

 Programación orientada a objetos con Java

183

17.2. La agregación y la composición
En una relación todo-parte una instancia forma parte de otra. En la vida real se dice que A está compuesto de B o que A tiene B. Ladiferencia entre asociación y relación todo-parte radica en la asimetría presente en toda relación todo-parte. En teoría se distingue entre dos tipos de relación todo-parte: a) la agregación es una asociación binaria que representa una relación todo-parte (pertenece a tiene un, es parte de). Por ejemplo, un centro comercial tiene clientes. b) la composición es una agregación fuerte en la que unainstancia ‘parte’ está relacionada, como máximo, con una instancia ‘todo’ en un momento dado, de forma que cuando un objeto ‘todo’ es eliminado, también son eliminados sus objetos ‘parte’. Por ejemplo: un rectángulo tiene cuatro vértices, un centro comercial está organizado mediante un conjunto de secciones de venta… A nivel práctico se suele llamar agregación cuando la relación se plasma mediantereferencias (lo que permite que un componente esté referenciado en más de un compuesto). Así, a nivel de implementación una agregación no se diferencia de una asociación binaria. Por ejemplo: un equipo y sus miembros. Por otro lado, se suele llamar composición cuando la relación se conforma en una inclusión por valor (lo que implica que un componente está como mucho en un compuesto, pero no impide...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • mnnnnnnnn,.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS