¿Qué es la Asociación en Java y por qué la necesita?



Este artículo sobre asociación en Java lo ayudará a comprender cómo establecer una conexión entre dos clases a través de sus objetos al codificar en Java.

¿Cómo se establece una conexión entre dos clases cuando se escribe un Programa Java ? Es sencillo. Puede hacer uso de un concepto llamado asociación. Suena interesante, ¿verdad? En este artículo, veamos la Asociación en en detalle.

usando el espacio de nombres c ++

Los temas tratados en este artículo son:





¿Qué es la Asociación?

La asociación en Java es una conexión o relación entre dos clases que se configuran a través de su objetos . La relación de asociación indica cómo se conocen los objetos y cómo utilizan la funcionalidad de cada uno. Puede ser uno a uno, uno a varios, varios a uno y varios a varios.

Asociación en Java - Edureka



  • Por ejemplo,una persona solo puede tener un pasaporte. Eso es un ' doce y cincuenta y nueve de la noche ”Relación.
  • Si hablamos de la asociación entre un banco y un empleado, un banco puede tener muchos empleados, por lo que es un “ uno a muchos ”Relación.
  • De manera similar, cada ciudad existe exactamente en un estado, pero un estado puede tener muchas ciudades, lo cual es un ' muchos a uno ”Relación.
  • Por último, si hablamos de la asociación entre un profesor y un alumno, se pueden asociar varios alumnos con un solo profesor y un solo alumno también se puede asociar con varios profesores pero ambos se pueden crear o eliminar de forma independiente. Esto es un ' muchos a muchos ”Relación.

Entendamos acerca de la Asociación con un ejemplo.

package MyPackage import java.util. * class CityClass {private String cityName public String getCityName () {return cityName} public void setCityName (String cityName) {this.cityName = cityName} @Override public String toString () {return cityName}} clase Estado {private String stateName Lista de ciudades public String getStateName () {return stateName} public void setStateName (String stateName) {this.stateName = stateName} public List getCities () {return citys} public void setState (Lista de ciudades) {this.citys = citys}} public class AssociationExample {public static void main (String [] args) {State state = new State () state.setStateName ('California') CityClass city = new CityClass () city.setCityName ('Los Ángeles') CityClass city2 = new CityClass () city2.setCityName ('San Diago') List empList = new ArrayList () empList.add (ciudad) empList.add (city2) state.setState (empList) System.out.println (state.getCities () + 'son ciudades en el estado' + state.getStateName ())}}

Salida:

[Los Ángeles, San Diago] son ​​ciudades del estado de California



Como puede ver, en este programa de ejemplo hay dos clases, a saber, estados y ciudades. Estas dos clases separadas están asociadas a través de su Objetos . Además, cada ciudad existe exactamente en un estado, pero un estado puede tener muchas ciudades, de ahí el término relación de “muchos a uno”. Es importante destacar que la asociación en Java tiene dos formas especiales. Vamos a verlos.

Dos formas de asociación

Composición y Agregación son las dos formas especiales de asociación. Veámoslos con la ayuda de un ejemplo.

def __init __ (auto) python

Composición

Es unTipo de 'pertenece a'asociación. Simplemente significa que uno de los objetos es una estructura lógicamente más grande, que contiene el otro objeto. En otras palabras, es parte o miembro del objeto más grande. Alternativamente, a menudo se le llama 'Tiene-una' relación (a diferencia de una relación 'es-a', que es ).

XaPor ejemplo, un edificio tiene una habitación, o en otras palabras, una habitación pertenece a un edificio. Composición es un tipo fuerte de relación 'tiene-a' porque los ciclos de vida de los objetos están vinculados. Significa que si destruimos el objeto propietario, sus miembros también serán destruidos con él. Por ejemplo, si el edificio se destruye, la habitación también se destruye en nuestro ejemplo anterior. Pero tenga en cuenta que eso no significa que el objeto contenedor no pueda existir sin ninguna de sus partes. Por ejemplo, si derribamos todas las habitaciones dentro de un edificio, el edificio seguirá existiendo.

Agregación

La agregación también es una relación 'tiene-a', pero lo que la distingue de la composición es que los ciclos de vida de los objetos no están vinculados. segundo otras entradas pueden sobrevivir individualmente lo que significa que poner fin a una entidad no afectará a la otra entidad. Ambos pueden existir independientemente el uno del otro. Por lo tanto, a menudo se la denomina asociación de semana.

Tomemos el ejemplo de un jugador y un equipo. Un jugador que es parte del equipo puede existir incluso cuando el equipo deja de existir.La principal razón por la que necesita la agregación es mantener la reutilización del código.

iso 9000 vs seis sigma

Esto nos lleva al final de este artículo donde hemos aprendido sobre la Asociación en .

Si encuentra relevante este artículo sobre 'Asociación en Java', consulte la una empresa de aprendizaje en línea de confianza con una red de más de 250.000 alumnos satisfechos repartidos por todo el mundo. Si encuentra alguna pregunta, no dude en hacer todas sus preguntas en la sección de comentarios de 'Asociación en Java' y nuestro equipo estará encantado de responder.