آموزش برنامه نویسی سی شارپ: سطح دسترسي Class member

آموزش برنامه نویسی سی شارپ: سطح دسترسي Class member

جلسه بیست ششم: سطح دسترسي Class member (اعضاي کلاس)

 

آموزش زبان برنامه نویسی سی شارپ

 

 

سطح دسترسی Private يا خصوصي:

اگر ما یک نوع Field یا متغیری را با سطح دسترسی Private تعریف کنیم، این متغیر فقط در همان Class قایل دسترسی میباشد. به عبارتی این Field نمیتواند با خارج از Class مربوط به خود خارج شود.

ّField چیست؟

گفتیم که Field، عضوی از یک Class میباشد. همچنین به عنوان یک متغیر، در یک Class معرفی میشود. در مثال زیر، ما یک Class به نام Car داریم. درون این Class، نوعی متغیر با سطح دسترسی Private تشکیل شده است.

به مثال زیر توجه کنید. ما یک Class به نام Car ایجاد کردیم. سپس یک متغیر از نوع string اسجاد کردیم که سطح دسترسی آن Private میباشد.

 

دسترسی Private

 

class Car
{
private string model = “Benz”;

static void Main(string[] args)
{
Car Ford = new Car();

Console.WriteLine(Ford.model);
}
}

 در ادامه مثال بالا، اگر شما بخواهید یک از یک Class دیگر به نام Car2 به متغیر Model درون Class Car دسترسی پیدا کنید، با خطا مواجه خواهید شد. زیرا متغیر Model که در Class Car وجود دارد، از نوع Private میباشد. گفتیم حالت دسترسی Private، اجازه نمیدهد به خارج از Class دسترسی داشته باشیم. بیایید این مثال را پیاده سازی کنیم.

ایجاد دو کلاس
توجه کنيد که اين دو Class کاملا از هم جدا ساخته شده اند.

class Car
{
private string model = “Benz”;

}

class Car2
{
static void Main(string[] args)
{
Car myObj = new Car();
Console.WriteLine(myObj.model);
}
}

در مثال بالا، ابتدا دو Class جدا از هم با نام های مختلف ایجاد کردیم. در Class Car2 زمانی که میخواهیم با استفاده از دستور ” . ” به properties یا خصوصیات Class یا همان مقادیر درون متغیر Model دسترسی داشته باشیم، با خطای زیر مواجه میشویم.

‘Car.model’ is inaccessible due to its protection level The field ‘Car.model’ is assigned but its value is never used

به اين دليل که اين حالت دسترسي اين Filed يا متغير Private يا خصوصي ميباشد و از خارج از Class Car نميتوانند به آن دسترسي داشته باشند.

سطح دسترسی Public یا عمومی:

اگر يک Field يا متغيري با سطح دسترسي Public يا عمومي اعلام کنيم، براي تمامي Class هاي يک برنامه، قابل دسترس و مشاهده خواهد بود.

به مثال زیر توجه کنید:

سطح دسترسی عمومی برای فیلد ها

class Car
{
public string model = “Benz”;
}

class Car2
{
static void Main(string[] args)
{
Car myObj = new Car();
Console.WriteLine(myObj.model);
}
}

در مثال بالا، دو Class ایجاد کردیم به نام Car و Car2. در Class Car یک متغیر ایجاد کردیم که به نام model و یک مقداری از جنس رشته درون آن قرار دادیم. این متغیر دارای سطح دسترسی public میباشد. پس از بیرون میتوانند به این متغیر دسترسی داشته باشند.

در Class Car2 يک متد يا تابع Main تشکيل داديم.  درون متد Main، از Class Car يک نمونه يا Object ايجاد کرديم به نام Myobj

در خط آخر، با استفاده از دستور ( . ) شي يا Object ايجاد شده، به مقادير متغير model دسترسي پيدا کردم. به عبارتي، Class Car2 ميتواند مقادير متغير model را ببنيد و در صورت اجراي برنامه، آن را چاپ کند. به طور پیشفرض، اگر هیچ سطح دسترسی تعیین نکنیم، همه اعضای یک Class خصوصی یا Private میباشند.

با ما همراه باشيد.

محمد امین مکارم

مطالب مرتبط

نقد و بررسی‌ها

نظر: