وراثت و چندشکلی موجودیت های مستقل اما مرتبط هستند - ممکن است یکی بدون دیگری داشته باشیم. اگر از زبانی استفاده کنیم که به متغیرها نیاز دارد تا نوع خاصی داشته باشند (c++, c, java) ممکن است باور کنیم که این مفاهیم به هم مرتبط هستند.
آیا پلی مورفیسم ارثی است؟
وراثت کلاسی است که در آن یک کلاس جدید ایجاد می شود (کلاس مشتق شده) که ویژگی ها را از کلاس موجود (کلاس پایه) به ارث می برد. در حالی که چندشکلی آن است که می تواند به شکل های متعدد تعریف شود… در حالی که می توان آن را چندشکلی زمان کامپایل (اضافه بار) و همچنین چندشکلی زمان اجرا (اغلب) کرد.
آیا چندشکلی به وراثت چندگانه نیاز دارد؟
همانطور که Ikke گفت، وراثت چندگانه هیچ ربطی به Polymorphism ندارد. بنابراین، کلاس Child هم ویژگیها و هم رفتارها را از هر دو کلاس به ارث میبرد.
آیا چندشکلی با وراثت قابل دستیابی است؟
3. وراثت از مفهوم قابلیت استفاده مجدد پشتیبانی می کند و طول کد را در برنامه نویسی شی گرا کاهش می دهد. وراثت می تواند به صورت تک، ترکیبی، چندگانه، سلسله مراتبی و وراثت چند سطحی باشد. در حالی که میتواند چند ریختی زمان کامپایل (اضافهبار) و همچنین چندشکلی زمان اجرا (اغلب) باشد.
آیا می توانیم بدون ارث به انتزاع برسیم؟
انتزاع به خودی خود بدون وراثت امکان پذیر است: می توانید یک کلاس را انتزاعی کنید و به هیچ وراثتی نیاز ندارد.