💻 آخرین فرصت یادگیری برنامه‌نویسی با آفر ویژه قبل از افزایش قیمت در ۵ آذر ماه (🎁 به همراه یک هدیه ارزشمند )
۰ ثانیه
۰ دقیقه
۰ ساعت
۲ Reza Tavassoli
Abstraction vs. Polymorphism
جامعه جاوا (اندروید) ایجاد شده در ۲۳ آذر ۱۳۹۸

با سلام 

شما در درس آشنایی با مفاهیم گفتید که انتزاع یعنی فقط اطلاعات مورد نیاز در معرض بازدید قرار بگیرند 

و داخل این درس گفتید که متد Run در هر کلاسی به نحو خاصی انجام میشه و هر حیوانی دویدن خاص خودش رو داره.  این همون چند ریختی هستش یا فرق داره  ؟ 

سلام 

متفاوت هستند. ببینید اگر دوباره فیلم مفاهیم شی گرایی رو نگاه کنید گفتند  چند ریختی میشود having many form   شکل عوض میشه ، اشکال مختلف به خود میگیره  ولی  صفت‌ها و رفتار‌های که در کلاس اون نمونه هست فرق نکرده فقط ریختش تغییر کرده  دقت کنید Polymorphism روی object می‌باشد .

اینجا هم بعضی مفاهیم  گفته شده می‌تونید  نگاهی بندازید  

مهرداد ۲۴ آذر ۱۳۹۸، ۱۱:۱۸

با سلام بله این مفهوم polymorphism هست یعنی یک رفتاری در کلاس‌های مختلف به شکل‌های مختلفی انجام میشه مثلا یک کلاسی با عنوان Animal داریم که یک متد eat درون خودش دارد حال چند sub Class داریم که از این کلاس Animal ارث بری کرده اند آیا همه sub Class‌ها مانند پدر خود یعنی Animal خوردن را انجام میدهد؟ خیر مثلا گنجشک برای غذا خودن نوک میزند کوسه برای غذا خودن ماهی‌های کوچکتر را میبلعد.
امیدوارم مفهوم را به خوبی رسانده باشم

میلاد عزیززاده ۱۵ دی ۱۳۹۸، ۰۹:۰۵