۳ محمدجوکار
ارور در برگرداندن متد static
جامعه پی اچ پی ایجاد شده در ۰۹ بهمن ۱۴۰۱

سلام

چرا باید اینجا به من ارور بده؟؟؟؟

من خواستم توسط متد پابلیک، یه متد دیگه‌ای که استتیک پرایویت هست رو برگردونم.. خب اشکالش چیه؟؟؟؟

خوبیش اینه که مثل سوالم دراین تاپیک نیست. و داره تلاش میکنه تا متد خودش رو در کلاس b برگردونه. یعنی از اروری که داده مشخصه.

ولی انگار داره میگه من نمیتونم از یه کلاس دیگه، یک متد پرایویت رو برگردونم. چرا اینطوری برداشت میشه؟؟ چون دقیقا در عکس دومی که میزارم، به هیچ خطایی نمیخوریم. که با توجه به مسئله‌ی ارث‌بری، نباید تفاوتی بین این دو وجود داشته باشه.

5709-Screenshot (664).png

ff27-Screenshot (665).png

سلام محمد عزیز

توی عکس اول چون متد پرایوت هست اجازه دسترسی در فرزند داده نمیشه .

برای اینکه بخواید متد کلاس والد رو برگردونید باید از parent استفاده کنید.

و تایپ متد رو پروتکتد قرار بدید.

parent::foo();
احمدرضا فاطمی کیا ۰۹ بهمن ۱۴۰۱، ۱۲:۲۱

خب من در عکس اول، میخوام بهش بگم که از متد پرایوت خودش یه چیزیو برام برگردونه نه از پدرش.

ولی نمیشه..

من اصلا چرا اینو متوجه نمیشم؟؟؟ یه روزه درگیر این موضوعم و نمیدونم چه منطقی پشتشه..

محمدجوکار ۰۹ بهمن ۱۴۰۱، ۱۷:۳۴

چون سه تاپیک با یک موضوع ایجاد شده همه موارد توی این تاپیک پیگیری میشه:

https://7learn.com/app/topics/14467

بهترین پاسخ
احمدرضا فاطمی کیا ۰۹ بهمن ۱۴۰۱، ۱۹:۰۱