logo

Agregação C# (relacionamento HAS-A)

Em C#, agregação é um processo no qual uma classe define outra classe como qualquer referência de entidade. É outra maneira de reutilizar a classe. É uma forma de associação que representa a relação TEM-A.

Exemplo de agregação C#

Vejamos um exemplo de agregação onde a classe Employee tem como referência a classe Address como membro dos dados. Desta forma, pode reutilizar os membros da classe Address.

 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(); } } 

Saída:

 1 Sonoo G-13 Sec-3 Noida UP