Access Modifier ها در سی شارپ
۲ دیدگاه
در حال حاضر خالی است: ۰ ﷼
public بالاترین سطح دسترسی است. Data Type و یا Member تعریف شده با این سطح دسترسی، از همه جا قابل دسترس و رویت می باشد. کدها چه داخل همان Data Type، چه خارج از آن، به عنصر مورد نظر دسترسی دارند. همچنین در همان اسمبلی و از اسمبلی های دیگر به عنصر public دسترسی وجود دارد.
در مثال بالا فیلد Permission از نوع string در سطح دسترسی internal تعریف شده است. یه همسن دلیل فقط در اسمبلی خودش فابل دسترس می باشد.
private پایین ترین سطح دسترسی می باشد. عناصری که به صورت private تعریف شده یاشند فقط در همان Data Type قابل دسترس می باشند. در واقع Member های private فقط توسط سایر Member های همان Data Type قابل دسترس هستند.
در مثال فوق فیلد Password از نوع string در سطح دسترسی private تعریف شده است. به همین دلیل در سایر Member های کلاس Account به آن دسترسی دارند. ولی خارج از کلاس Account این فیلد قابل دسترس نمی باشد.
سطح دسترسی protected مشابه سطح دسترسی private می باشد. با این تفاوت که عناصر protected، در همان Data Type و فرزندان آن قابل دسترس خواهند بود. (برای آشنایی بیشتر با مفهوم Inheritance مطلب: مبانی برنامه نویسی شیء گرا – وراثت را مطالعه نمایید).
در مثال بالا فیلد Speed از نوع long در سطح دسترسی protected تعریف شده است. بنابر این فقط در سایر Member های کلاس Car و کلاس SportCar به عنوان child کلاس Car به آن دسترسی وجود دارد.
با توجه به آشنایی با سطوح دسترسی protected و internal، درک سطح دسترسی protected internal سخت نیست. در واقع protected internal ترکیب دو سطح دسترسی protected و internal است. Member هایی با این سطح دسترسی، به دلیل internal بودن فقط در همان اسمبلی قابل دسترس هستند. همزمان به دلیل protected بودن، فقط محدود به خود Data Type و فرزندان آن خواهند بود. بنابر این فرزندان خارج از اسمبلی قادر به رویت این Member ها نخواهند بود.
به مثال زیر توجه کنید:
در مثال بالا فیلد Speed از نوع long در سطح دسترسی protected internal تعریف شده است. بنابراین فقط در سایر Member های کلاس Car و کلاس SportCar به آن دسترسی دارند. ولی Member های کلاس Truck با وجود اینکه فرزند کلاس Car می باشد، به این فیلد دسترسی ندارند.
واقعا ممنونم از شما استاد شهاب ساری اصلانی
خیلی مطالبتون مفید هستند
ایشالا سالم و موفق باشید
خوشحالیم که از مطالب استفاده میکنید
ممنون از شما