تفاوت بین Superclass و Subclass

فهرست مطالب:

تفاوت بین Superclass و Subclass
تفاوت بین Superclass و Subclass

تصویری: تفاوت بین Superclass و Subclass

تصویری: تفاوت بین Superclass و Subclass
تصویری: الدرس السادس : مفهوم SuperClass و SubClass 2024, دسامبر
Anonim

تفاوت کلیدی - Superclass در مقابل Subclass

در برنامه نویسی شی گرا (OOP)، سیستم با استفاده از اشیاء مدل می شود. این اشیاء با استفاده از یک کلاس ایجاد می شوند. کلاس یک طرح یا توضیح برای ایجاد یک شی است. ایجاد شی نیز به عنوان نمونه سازی شی شناخته می شود. هر شی در حال ارتباط با اشیاء دیگر است. یک برنامه یا نرم افزار را می توان با استفاده از برنامه نویسی شی گرا توسعه داد. وراثت یک مفهوم اصلی در OOP است. قابلیت استفاده مجدد کد را بهبود می بخشد. به جای اجرای یک برنامه از ابتدا، اجازه می دهد تا ویژگی ها و متدهای کلاس موجود را به یک کلاس جدید به ارث ببرند. به مدیریت بیشتر برنامه کمک می کند. Superclass و Subclass دو اصطلاحی هستند که به وراثت مربوط می شوند. این مقاله به تفاوت بین Superclass و Subclass می پردازد. تفاوت اصلی بین Superclass و Subclass این است که Superclass کلاس موجود است که کلاس های جدید از آن مشتق می شوند در حالی که Subclass کلاس جدیدی است که ویژگی ها و متدهای Superclass را به ارث می برد.

سوپرکلاس چیست؟

در Inheritance، کلاس موجود که کلاس های جدید از آن مشتق شده اند به عنوان Superclass شناخته می شود. به عنوان کلاس والد یا کلاس پایه نیز شناخته می شود.

انواع مختلف وراثت وجود دارد. با استفاده از مثال های زیر نشان داده شده است. A B و C را به عنوان کلاس در نظر بگیرید.

تفاوت بین Superclass و Subclass
تفاوت بین Superclass و Subclass

شکل 01: انواع وراثت

تفاوت بین Superclass و Subclass_Figure 02
تفاوت بین Superclass و Subclass_Figure 02

شکل 02: وراثت ترکیبی

طبق نمودارهای بالا، Superclasses در هر نوع ارثی متفاوت است. در وراثت تک سطحی، A Superclass است. در وراثت چندسطحی، A سوپرکلاس برای B و B سوپرکلاس برای C است. در وراثت سلسله مراتبی A، سوپرکلاس برای هر دو B و C است. در وراثت های چندگانه، هر دو A و B برای C ابرکلاس هستند.

وراثت ترکیبی ترکیبی از وراثت های چند سطحی و چندگانه است. در نمودار سمت چپ، A سوپرکلاس برای B است، C و B، C سوپرکلاس برای D هستند. در نمودار سمت راست، A سوپرکلاس برای B و B، D سوپرکلاس برای C هستند.

به برنامه زیر که در جاوا نوشته شده است مراجعه کنید.

تفاوت کلیدی بین Superclass و Subclass
تفاوت کلیدی بین Superclass و Subclass

شکل 03: برنامه وراثت در جاوا

طبق برنامه فوق، کلاس A دارای متدهای sum() و sub() است. کلاس B متد multiply() دارد. کلاس B در حال گسترش کلاس A است. بنابراین، ویژگی ها و متدهای کلاس A توسط کلاس B قابل دسترسی هستند. بنابراین، کلاس A Superclass است. نوع مرجع کلاس B برای ایجاد شی در نظر گرفته می شود. بنابراین، تمام متدها مانند sum()، sub() و multiply() توسط شی قابل دسترسی هستند. اگر از نوع مرجع Superclass برای ایجاد شی استفاده شود، اعضای کلاس B قابل دسترسی نیستند. به عنوان مثال، A obj=new B(); بنابراین، مرجع Superclass نمی تواند متد multiply() را فراخوانی کند زیرا آن متد متعلق به کلاس B است.

Subclass چیست؟

طبق نمودارهای بالا، زیر کلاس ها از هر نوع ارثی متفاوت است. در Single Heritance، B زیر کلاس است. در وراثت چند سطحی، B زیر کلاس A و C زیر کلاس B است.در وراثت سلسله مراتبی B و C زیر کلاس های A هستند. در وراثت های چندگانه، C زیر کلاس A و B است.

در وراثت هیبریدی، نمودار سمت چپ، B و C زیر کلاس های A هستند. D زیر کلاس B و C است. در نمودار سمت راست، B زیر کلاس A است. C زیر کلاس است. از B و D.

طبق برنامه Inheritance بالا، کلاس B در حال گسترش کلاس A است. بنابراین، تمام ویژگی ها و متدهای کلاس A توسط کلاس B قابل دسترسی هستند. کلاس B کلاس جدیدی است که از کلاس A به ارث می برد. زیر کلاس همچنین به عنوان کلاس فرزند یا کلاس مشتق شده نیز شناخته می شود. کلاس B متد ضرب () دارد و همچنین می تواند به متدهای sum() و sub() کلاس A با استفاده از وراثت دسترسی داشته باشد.

شباهت بین Superclass و Subclass چیست؟

هر دو مربوط به وراثت هستند

تفاوت بین Superclass و Subclass چیست؟

Superclass vs Subclass

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

خلاصه - Superclass در مقابل Subclass

وراثت یک مفهوم OOP است. این اجازه می دهد تا با استفاده از ویژگی ها و متدهای یک کلاس موجود توسط یک کلاس جدید قابل دسترسی باشد. کلاس ارثی Superclass است و کلاس مشتق شده Subclass است. تفاوت بین Superclass و Subclass در این است که Superclass کلاس موجود است که کلاس های جدید از آن مشتق می شوند در حالی که Subclass کلاس جدیدی است که ویژگی ها و متدهای Superclass را به ارث می برد.

دانلود PDF Superclass vs Subclass

می توانید نسخه PDF این مقاله را دانلود کنید و طبق یادداشت نقل قول برای اهداف آفلاین از آن استفاده کنید. لطفاً نسخه PDF را از اینجا دانلود کنید تفاوت بین Superclass و Subclass

توصیه شده: