خواص(Properties)

از فصل قبل آموختید که متغیرهای خصوصی فقط می‌توانند
در همان کلاس قابل دسترسی است (یک کلاس خارجی به آن دسترسی ندارد). با این حال،
گاهی اوقات لازم است به آنها دسترسی داشته باشیم - و این کار را می توان با ویژگی ها انجام داد.


یک ویژگی مانند ترکیبی از یک متغیر و یک متد است و دارای دو روش است: get و روش set:




مثال


class Person
{
private string name; // field

public string Name // property
{
get { return name; } // get method
set { name = value; } // set method
}
}


مثال توضیح داده شد


ویژگی Name با فیلد name مرتبط است. استفاده از یک نام برای فیلد خصوصی و خصوصی، اما با یک حرف اول بزرگ، تمرین خوبی است.


روش get مقدار متغیر name را برمی‌گرداند.


روش set یک مقدار را به
متغیر name. کلمه کلیدی value نشان دهنده مقداری است که ما به ویژگی اختصاص می دهیم.



اگر آن را کاملاً درک نمی‌کنید، به مثال زیر نگاهی بیندازید.



اکنون می‌توانیم از ویژگی Name برای دسترسی و به‌روزرسانی فیلد خصوصی در شخص کلاس:



مثال


class Person
{
private string name; // field
public string Name // property
{
get { return name; }
set { name = value; }
}
}

class Program
{
static void Main(string[] args)
{
Person myObj = new Person();
myObj.Name = "Liam";
Console.WriteLine(myObj.Name);
}
}

The output will be:



Liam