تبلیغات
سی شارپ کده - سطح دسترسی ها در سی شارپ

سی شارپ کده

شنبه 19 شهریور 1390

سطح دسترسی ها در سی شارپ

نویسنده: حمیدرضا مهدوی پناه   طبقه بندی: نکته های آموزشی، 

سطح دسترسی  Access Modifiers




ما در زبان سی شارپ بطور کلی دارای چهار سطح دسترسی بصورت زیر هستیم .

1-private : دسترسی اختصاصی میباشد. در این حالت عضو مورد نظر از بیرون کلاس قابل مشاهده و دسترسی نخواهد بود و فقط در داخل کلاسی که تعریف میشود قابل دسترسی خواهد بود.

2-public : دسترسی عام میباشد. عضوی که از نوع public است از بیرون کلاسی که در آن تعریف شده است ، توسط دیگر کلاسها کاملا قابل دسترسی و ویرایش خواهد بود.

3-internal : تنها در داخل فایل یا اسمبلی فعلی قابل استفاده خواهند بود

4-protected : تنها در کلاسی که تعریف در آن تعریف شده و کلاسهایی که از آن کلاس مشتق میشوند قابل دسترسی خواهد بود.



به شکل اول تصویرنگاه کنید همانطور که می بینید دایره سبز رنگ نشان دهنده سطح دسترسی متغیرpublic است. می بینیم که این سطح دسترسی هم در خارج از کلاس و هم د ر خارج از پروژه ما قابل دسترسی است .

دایره های کوچک قرمز رنگ ، نشان دهنده متغیرها و فیلدهایی است با سطح دسترسی private است همانطور که از شکل پیداست این متغیرها فقط در همان محدوه که تعریف شده اند . قابل دستیابی هستند .

دایره آبی رنگ نشان دهنده سطح دسترسی internal است . یعنی کلاس یا متغیری از این نوع فقط در سطح همان پروژه قابل دسترسی است و اگر ما فرضا پروژه 2 را ایجاد کنیم و بخواهیم از کلاس با سطح دسترسی internal در پروژه 2 استفاده کنیم ممکن نیست .

و سرانجام شکلهای نامنتظم قهوه ای رنگ را می بینید که نشان دهنده سطح دسترسی protectedاست .

سطح دسترسی دیگری نیز وجود دارد تحت عنوان protected internal این سطح دسترسی در همان پروژه تعریف شده قابل دسترسی است و علاوه بر آن اگر کلاسی از پروژه دیگر از آن ارث بری کند نیز قابل دسترسی است .

در واقع برابر با internal +protected است . از اجتماع این دو در شکل بالا می توانید آن را مشاهده کنید قهوه ای به اضافه رنگ آبی .

به نقل از صفحه شخصی سید علا سبزپوش


نظرات() 
Do you get taller when you stretch?
سه شنبه 10 مرداد 1396 03:18 ق.ظ
Asking questions are in fact pleasant thing if you are
not understanding something fully, but this post offers pleasant understanding even.
Rae
دوشنبه 25 اردیبهشت 1396 02:36 ق.ظ
Hi! I know this is kind of off topic but I was wondering which blog platform are you
using for this website? I'm getting tired of Wordpress because I've had issues
with hackers and I'm looking at options for another platform.
I would be awesome if you could point me in the direction of a good platform.
BHW
جمعه 25 فروردین 1396 06:48 ق.ظ
When I initially commented I clicked the "Notify me when new comments are added" checkbox and now each
time a comment is added I get three e-mails with the
same comment. Is there any way you can remove people from that service?
Bless you!
 
لبخندناراحتچشمک
نیشخندبغلسوال
قلبخجالتزبان
ماچتعجبعصبانی
عینکشیطانگریه
خندهقهقههخداحافظ
سبزقهرهورا
دستگلتفکر

آمار وبلاگ

  • کل بازدید :
  • بازدید امروز :
  • بازدید دیروز :
  • بازدید این ماه :
  • بازدید ماه قبل :
  • تعداد نویسندگان :
  • تعداد کل پست ها :
  • آخرین بازدید :
  • آخرین بروز رسانی :