کی و کجا باید از base استفاده کرد؟
The base
keyword is used to access members of the base class from within a derived class. Use it if you want to:
کلمه کلیدی base به ما قابلیت این رو میده که از داخل کلاس مشتق شده بتونیم به اجزا کلاس base که override شده دسترسی پیدا کنیم.
چون اگر به خاطرتون باشه ما در حالت عادی به تمام اجزای کلاس بیس دسترسی داریم ولی وقتی که یه متد کلاس بیس توسط یه کلاس مشتق override کردیم باید از base استفاده کنیم تا به اجزا کلاس بیس دسترسی پیدا کنیم.
به طور مثال:
public class Person{ protected string ssn = "444-55-6666" protected string name = "John L. Malgraine" public virtual void GetInfo() { Console.WriteLine("Name: {0}", name); Console.WriteLine("SSN: {0}", ssn); } } class Employee : Person { public string id = "ABC567EFG" public override void GetInfo() { // Calling the base class GetInfo method: base.GetInfo(); Console.WriteLine("Employee ID: {0}", id); } } class TestClass{ static void Main() { Employee E = new Employee(); E.GetInfo(); } } /* Output Name: John L. Malgraine SSN: 444-55-6666 Employee ID: ABC567EFG */
خوب حالا بیایم این مثال رو بررسی کنیم، همونطوری که میبینید اینجا متد GetInfo توسط کلاس employee اومده override شده. حالا ما میخوایم همچنان از اطلاعات اولیه کلاس بیس استفاده کنیم که برای همین توی همون متد اومدیم از base استفاده کردیم
این مطالب از این سایت گرفته شده است.