🎉 سال نو، مهارت نو، مشاوره رایگان نقشه راه برنامه نویسی (آفر ویژه ثبت نام قبل از افزایش قیمت 🔥)
۰ ثانیه
۰ دقیقه
۰ ساعت
۳ رامهر
extend کردن کلاس
جامعه برنامه نویسی وب ایجاد شده در ۲۵ آذر ۱۴۰۲

سلام وقت بخیر خسته نباشید

در این کدی که ارسال کردم چرا با اینکه پراپرتی name رو دوباره نوشتم و بینشون فرق public و private قرار دادم ، در هنگام صدا زدن تابع getName برای ما name پرایویت رو چاپ کرد در صورتی که اگه هردو رو public نوشتم ، overwrite شد و برای ما name جدید رو توی خروجی نمایش داد ؟

در واقع بین private و public آیا private در اولویت قرار دارد ؟ 

 

رامهر ۲۵ آذر ۱۴۰۲، ۱۵:۱۹

سلام

پراپرتی‌های پرایوت خصوصی هستند و فقط داخل اون کلاس قابل دسترسی هستند. 

پس شما با صدا زدن متد get فقط پراپرتی پرایوت رو دارید و چون مخصوص خود کلاس هست اور راید نمیشه و برای اینکه بتونید مقدار کلاس فرزند رو بگیرید باید در کلاس فرزند هم یک متد جدا بنویسید. 

احمدرضا فاطمی کیا ۲۶ آذر ۱۴۰۲، ۱۴:۱۵