آموزش access modifiers در سی شارپ

ارسال شده توسط: حسین درویشی Comments: 0

آموزش access modifiers در سی شارپ

access modifiers برای تعیین سطح دسترسی به خصوصیات و متدهای یک کلاس مورد استفاده قرار می گیرد.

در زبان سی شارپ پنج نوع تعیین سطح دسترسی وجود دارد

کاربرد access modifiers ها چیست؟

کاربرد access modidiers ها صرفاً برای تعیین سطح دسترسی برای متدهاو متغییر های یک کلاس و خود کلاس می باشد این در زبان جاوا هم کاربرد access modidiers ها به اینصورت است فقط در آن internal و Protected internal وجود ندارد

آموزش access moifiers ها در سی شارپ

access modifiers

  1. public
  2. protected
  3. private
  4. internal
  5. protected internal

ما در این مقاله تنها سه نوع از، آموزش access modifiers ها را توضیح خواهیم داد

سطح دسترسی public

اگر بخواهیم این نوع سطح دسترسی را به زبان ساده توضیح دهیم اول یک مثال در زندگی اطرف خودمان می زنیم یک مغازه بقالی را در نظر بگیرید هر کسی می تواند وارد مغازه بقالی شود و هر فردی می تواند به اجناس آن مغازه دسترسی داشته باشد از هرجایی که وارد مغازه شود چه مادر صاحب مغازه چه پدرش و چه شخصی که از آلمان وارد شود می تواند به اجناس آن مغازه دسترسی داشته باشد که به این سطح دسترسی public یا عمومی می گویند در این نوع سطح دسترسی یک متد یا متغیر می تواند از خارج از کلاس و در هر قسمتی قابل دسترسی باشد.

        public class Student
{
public string name;
public string family;
public  string mobile;
public void mainTest()
{
MessageBox.Show("Hello");
}
}
public class Test
{
Student st = new Student();
public void test()
{
st.mainTest();
}
}

سطح دسترسی protected

سطح دسترسی protected می گوید که فقط آشنایان من می توانند به اعضای کلاس دسترسی داشته باشد یعنی شما خانواده خود را در نظر بگیرید پدر خانواده همان سرپرست خانواده است و کسانی می توانند وارد خانه شما شوند که یکی از اقوام یا آشنایان شما هستند مثلاً پسرخاله، یا دایی عمه، عمو، همسایه و… می توانند وارد خانه شوند اما دیگر شخصی که از خیابان عبور می کند نمی تواند وارد خانه شما شود سطح دسترسی protected در زبان برنامه نویسی هم عینن همین است و به زیرکلاس ها و اعضای خود آن کلاس اجازه دسترسی می دهد

        protected class Student2
{
protected string name;
protected string family;
}
protected class Std : Student2
{
Std st = new Std();
protected void mainTestProtected()
{
st.name = "ali";
st.family = "alizadeh";
MessageBox.Show(name + " " + family);
}
}

سطح دسترسی private

این نوع سطح دسترسی کاملا خصوصی است و کسانی به متدها و متغییرهای آن کلاس دسترسی دارند که فقط از اعضای خود آن کلاس باشد.

        private class Student1
{
private string name;
private string family;
}
private class Test2 : Student1
{
Test2 ts = new Test2();
void mainPrivateTest()
{
ts.name; //این قسمت از کد غیر مجازاست و صرفاً برای درک مطلب نوشته شد
ts.family; //این قسمت از کد غیر مجازاست و صرفاً برای درک مطلب نوشته شد
}
}

در مثال بالا پس از ارث بری کلاس Student1 توسط کلاس Test2 در داخل تابع void mainPrivateTest سعی کرده ایم تا به name , family دسترسی داشته باشیم اما برنامه خطا خواهد داد و خطا این است که ما سطح دسترسی کلاس را از نوع Private تعریف کردیم و می خواهیم خارج از کلاس دسترسی داشته باشیم.

در مثال بالا حتی اگر سطح دسترسی name, family را public تعریف کنیم باز هم خطا خواهد داد.

برای درک بهتر این آموزش ویدیوی آموزشی آن بزودی منتشر خواهد شد

برای امتیاز به این نوشته کلیک کنید!
[کل: 1 میانگین: 5]

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *