logo

C# агрегиране (връзка HAS-A)

В C# агрегирането е процес, при който един клас дефинира друг клас като всяка препратка към обект. Това е друг начин за повторно използване на класа. Това е форма на асоцииране, която представлява HAS-A връзка.

Пример за агрегиране на C#

Нека видим пример за агрегиране, при който клас Employee има препратка към клас 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(); } } 

Изход:

 1 Sonoo G-13 Sec-3 Noida UP