12-11-1395، 08:35 ب.ظ
سلام و عرض ادب
راستش من چندین جا خوندم override به معنی بازنویسی متد هستش که اگه کلاسی رو از یه سوپر کلاس به ارث ببرین و بخواین از یه متد با همون نام و بدنه ی متفاوت توی ساب کلاس استفاده کنین باید از override استفاده کنین،حالا من سوالم اینجاست که چه کاریه متدی رو override کنیم،بیایم و یه اسم دیگه ای برای متدمون انتخاب کنیم تا نیازی به override نداشته باشیم.
حالا یه سوال دیگه،این که وقتی یه کلاس رو از سوپر کلاسی extend کنیم(به عنوان مثال یک کلاس رو از کلاس FragmentPagerAdapter به ارث ببریم،دو متد override شده باید حتما توی کلاس باشه یکی public Fragment getItem(int i) و یکی public int getCount،من توی یه سورس کد دیدم که وقتی viewpager رو با اداپتر ساخته شده از کلاس FragmentPagerAdapter ست میکنیم،من دیدم اصلا این تابع هارو فراخونی نکردن توی کلاس اصلی،و فقط یه شی ازش ساختن و viewpager رو باهاش ست کردن،خواستم بدونم آیا متد های override شده خاصیت دیگه ای هم داره که فقط با ساختن شی بتونیم ازش استفاده کنیم توی کلاس اصلی؟
راستش من چندین جا خوندم override به معنی بازنویسی متد هستش که اگه کلاسی رو از یه سوپر کلاس به ارث ببرین و بخواین از یه متد با همون نام و بدنه ی متفاوت توی ساب کلاس استفاده کنین باید از override استفاده کنین،حالا من سوالم اینجاست که چه کاریه متدی رو override کنیم،بیایم و یه اسم دیگه ای برای متدمون انتخاب کنیم تا نیازی به override نداشته باشیم.
حالا یه سوال دیگه،این که وقتی یه کلاس رو از سوپر کلاسی extend کنیم(به عنوان مثال یک کلاس رو از کلاس FragmentPagerAdapter به ارث ببریم،دو متد override شده باید حتما توی کلاس باشه یکی public Fragment getItem(int i) و یکی public int getCount،من توی یه سورس کد دیدم که وقتی viewpager رو با اداپتر ساخته شده از کلاس FragmentPagerAdapter ست میکنیم،من دیدم اصلا این تابع هارو فراخونی نکردن توی کلاس اصلی،و فقط یه شی ازش ساختن و viewpager رو باهاش ست کردن،خواستم بدونم آیا متد های override شده خاصیت دیگه ای هم داره که فقط با ساختن شی بتونیم ازش استفاده کنیم توی کلاس اصلی؟