logo

C# 集約 (HAS-A 関係)

C# では、集約は、あるクラスが別のクラスをエンティティ参照として定義するプロセスです。これはクラスを再利用するもう 1 つの方法です。これは、HAS-A 関係を表す関連付けの形式です。

C# 集約の例

Employee クラスが Address クラスの参照をデータメンバーとして持つ集計の例を見てみましょう。このようにして、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