دلیل عدم نمایش متدهای سوپر کلاس در ساب کلاس چیست؟
با سلام خدمت دوستان عزیز و تبریک سال نو
من یه پروژه ایجاد کردم که توی اون وقتی یه ساب کلاس تعریف کردم لیست متدهای کلاس بالایی با زدن ctrl+space به من نمایش داده نمیشه . و نمیتونم ببینم که کلاس بالایی چه متدهایی داره تا ازشون استفاده کنم و ارث بری داشته باشم.
حتی وقتی که نام متد رو دستی وارد میکنم اون متد رو یه متد جدید در نظر میگیره و میخواد که بهش بادی و متن بدم.
میتونید بگید مشکل از کجاست؟
جوابشو گیر آوردم اگه خواستید استفاده کنید
Windows > Preferences > Java > Editor > Content Assist > Advanced > Restore Default
حالا فیلد هامو نمیبینه
ممنونم از یاد آوریتون ولی حتی public ها رو هم نمیبینه
اگه فیلدها و متدهاتون رو private تعریف نکنید قطعا توی کلاس پایه میتونید استفاده شون کنید
فقط یه نکته راجبه فیلدها هست و اونم اینه که شما مثلا اگه توی کلاس سوپر نوشته باشید
class ClassOne{
public int testNumberOne;
}
توی کلاس پایه نمیتونید این فیلد رو تغییر مقدار بدید یعنی مثلا نمیتونید توی کلاس پایه بنویسید testNumberOne = 45; ولی میتونید فیلدی از همون نوع تعریف کنید و مقدار فیلد کلاس سوپر رو در اون واریز کنید..مثلا میتونید در کلاس پایه بنویسید :
class ClassTwo extends ClassOne{
public int testNumberTwo = testNumberOne;
}
حتی با رعایت public و private حتی برای اولین بار که بتونم فیلدهامو ببینم با زدن ctrl+space به من نمایش داده نمیشه . و نمیتونم ببینم که کلاس بالایی چه فیلدهایی داره متد هامو تونستم ببینم با روشی که بالا نوشتم پیدا کردم.
اگه میتونید راهنمایی کنید ممنون میشم
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .