logo

Agregación de C# (relación HAS-A)

En C#, la agregación es un proceso en el que una clase define otra clase como cualquier referencia de entidad. Es otra forma de reutilizar la clase. Es una forma de asociación que representa la relación HAS-A.

Ejemplo de agregación de C#

Veamos un ejemplo de agregación donde la clase Empleado tiene la referencia de la clase Dirección como miembro de datos. De esta forma, puede reutilizar los miembros de la clase Dirección.

 using System; public class Address { public string addressLine, city, state; public Address(string addressLine, string city, string state) { this.addressLine = addressLine; this.city = city; this.state = state; } } public class Employee { public int id; public string name; public Address address;//Employee HAS-A Address public Employee(int id, string name, Address address) { this.id = id; this.name = name; this.address = address; } public void display() { Console.WriteLine(id + ' ' + name + ' ' + address.addressLine + ' ' + address.city + ' ' + address.state); } } public class TestAggregation { public static void Main(string[] args) { Address a1=new Address('G-13, Sec-3','Noida','UP'); Employee e1 = new Employee(1,'Sonoo',a1); e1.display(); } } 

Producción:

 1 Sonoo G-13 Sec-3 Noida UP