سربارگذاری سازنده ها (Constructor overloading) در سی شارپ
سی شارپ به شما اجازه می دهد تا در هنگام ایجاد یک سازنده جدید برای یک کلاس ، آن سازنده را چندین باز مورد استفاده قرار دهید یا به اصطلاح سربارگذاری کنید .
یک نمونه خوب از سربارگذاری کلاس MessageBox می باشد که در بیشتر برنامه های ویندوزی کاربرد دارد .
در تصویر بالا مشاهده می کنید که کلاس MessageBox دارای 21 متد سربارگذاری شده برای سازنده خود می باشد .
در این مثال فرض بر این است که یک کلاس به نام Person داریم و می خواهیم چند سازنده برای آن ایجاد کنیم .
class Person { public Person() { } public Person(String name) : this(name, 0, 0) { } public Person(String name, int age) : this(name, age, 0) { } public Person(String name, int age, float salary) { this.Name = name; this.Age = age; this.Salary = salary; } public override string ToString() { return "Name: " + this.Name + "\n" + "Age: " + this.Age + "\n" + "Salary: " + this.Salary + "\n"; } public String Name { get; set; } public int Age { get; set; } public float Salary { get; set; } }
نتیجه کدهای بالا به شکل زیر خواهد بود