Agregación en Java Definición y ejemplos

Agregación en Javaes una relación entre dos clases que se describe mejor como una relación "has-a" y "todo / parte". Es una versión más especializada de la relación de asociación. La clase agregada contiene una referencia a otra clase y se dice que es propietaria de esa clase. Cada clase referenciada se considera parte de la clase agregada.

La propiedad se produce porque no puede haber referencias cíclicas en una relación de agregación. Si la Clase A contiene una referencia a la Clase B y la Clase B contiene una referencia a la Clase A, entonces no se puede determinar una propiedad clara y la relación es simplemente de asociación.

Por ejemplo, si imagina que una clase de Estudiantes almacena información sobre estudiantes individuales en una escuela. Ahora asuma una clase de Asunto que contiene los detalles sobre un tema en particular (por ejemplo, historia, geografía). Si la clase Student está definida para contener un objeto Asunto, entonces se puede decir que el objeto Student tiene un Sujeto objeto. El objeto sujeto también constituye parte de el objeto Estudiante: después de todo, no hay estudiante sin una asignatura para estudiar. El objeto Estudiante, por lo tanto, posee el objeto Sujeto.

Ejemplos

Defina una relación de agregación entre la clase Alumno y la clase Asunto de la siguiente manera:

 Asunto de clase pública 
nombre de cadena privado;
public void setName (nombre de cadena)
this.name = nombre;

public String getName ()

nombre de retorno;


Estudiante de clase pública
Asunto privado [] studyAreas = nuevo Asunto [10];
// el resto de la clase de estudiantes