آشکار بودن یک کلاس، یک متد، یک متغیر یا یک ویژگی به ما می گوید که چگونه می توان به آن آیتم دسترسی پیدا کرد. متداول ترین نوع سطح دسترسی visibility ؛ public یا private بودن می باشد؛ اما در واقع چندین نوع سطح دسترسی در سی شارپ وجود دارد. در این بخش یک لیست کامل آورده شده است؛ و با این که ممکن است احساس کنید؛ برخی از آنها اکنون به کارتان نمی آید؛ اما همیشه می توانید به این صفحه بازگشته و مطالب مربوط به آنهارا مطالعه کنید.
Public– می توان به یک عضو از هر جایی دسترسی پیدا کرد. این کمترین محدودیت Visibility است. enumها و رابط ها به صورت پیش فرض، به صورت عمومی و public آشکار هستند.
توی این پک فوق العاده، صفرتاصد مبانی برنامه نویسی رو جوری یاد میگیری که تو هیچ کلاس آموزشی یا پک دیگه ای نه دیدی نه شنیدی! بدون هیچ کلاسی، با صفرتاصد مبانی برنامه نویسی اپلیکیشن بزن، پروژه محور یاد بگیر و حسابی پول در بیار!
protected – (حفاظت شده): فقط از درون همان کلاس مشابه می توان به اعضا دسترسی پیدا کرد.
internal– فقط از درون همان پروژه می توان به اعضا دست یافت.
protected internal – مانند internal؛ به جز کلاس هایی که از این کلاس باقی می مانند؛ حتی از یک پروژه دیگر؛ می توان به اعضا دست پیدا کرد.
private – فقط از همان کلاس به اعضا دست یافت. این مورد محدودترین نوع دسترسی هست. کلاس ها و ساختارها (struct) به صورت پیش فرض روی آشکار بودن private تنظیم شده اند.
بنابراین؛ برای مثال، اگر شما دو کلاس داشته باشید: کلاس ۱ و کلاس ۲؛ اعضای private از کلاس ۱ را فقط در کلاس ۱ می توان استفاده کرد. شما نمی توانید یک نمونه جدید از کلاس ۱ درون کلاس ۲ ایجاد کنید و سپس انتظار می رود که بتوانید از اعضای خصوصی آن استفاده کنید.
اگر کلاس ۲ از کلاس ۱ باقی مانده باشد؛ تنها اعضای غیر خصوصی را می توان از درون کلاس۲ به دست آورد.