Diferența Dintre Polimorfism și Moștenire în POO

Cuprins:

Diferența Dintre Polimorfism și Moștenire în POO
Diferența Dintre Polimorfism și Moștenire în POO

Video: Diferența Dintre Polimorfism și Moștenire în POO

Video: Diferența Dintre Polimorfism și Moștenire în POO
Video: Abstractizare, încapsulare, moștenire, polimorfism | Tutorial Java începători #6 2024, Mai
Anonim

Diferența cheie - Polimorfism vs moștenire în POO

Programarea orientată pe obiecte (OOP) este utilizată în mod obișnuit pentru a dezvolta software. Multe limbaje de programare acceptă programarea orientată pe obiecte. Programarea orientată pe obiecte este o metodologie de proiectare a unui program folosind clase și obiecte. O clasă în POO este un plan pentru a crea un obiect. O clasă are proprietăți și metode. Un obiect este o instanță a unei clase. POO conține patru piloni, cum ar fi Moștenirea, Polimorfismul, Abstracția și Encapsularea. Acest articol discută diferența dintre polimorfism și moștenire în POO. Diferența cheie între Polimorfism și Moștenire în PO este că Polimorfismul este capacitatea unui obiect de a se comporta în mai multe moduri, iar Moștenirea este de a crea o nouă clasă folosind proprietăți și metode ale unei clase existente.

CUPRINS

1. Prezentare generală și diferența cheie

2. Ce este polimorfismul în POO

3. Ce este moștenirea în POO

4. Asemănări între polimorfism și moștenire în POO

5. Comparație side by side - Polimorfism vs moștenire în POO în formă tabelară

6. Rezumat

Ce este polimorfismul în POO?

Polimorfismul este să indice forme multiple. Un obiect poate avea comportamente multiple. Polimorfismul poate fi împărțit în două categorii. Acestea sunt supraîncărcate și suprascrise.

Suprasolicitare

Consultați programul de mai jos scris în Java.

Diferența dintre polimorfism și moștenire în POO
Diferența dintre polimorfism și moștenire în POO

Figura 01: Suprasarcină

Conform programului de mai sus, se creează un obiect de tip A. La apelarea obj.sum (); va da rezultatul legat de metoda sum (). La apelarea obiect.sum (2,3); va da rezultatul legat de sumă (int a, int b). Se poate observa că același obiect are comportamente diferite în funcție de situație. Când există mai multe metode cu același nume, dar cu parametri diferiți, este cunoscut sub numele de supraîncărcare. Este, de asemenea, cunoscut sub numele de legare statică sau polimorfism de timp de compilare.

Supranumit

Un alt tip de polimorfism este cel mai important. Consultați programul de mai jos scris în Java.

Diferența dintre polimorfism și moștenire în OOP Figura 02
Diferența dintre polimorfism și moștenire în OOP Figura 02

Figura 02: Suprascriere

Conform programului de mai sus, există o afișare a metodei () în clasa A. Clasa B se extinde din clasa A. Prin urmare, toate metodele din clasa A sunt accesibile de clasa B. Este moștenire. Conceptul de moștenire este descris în continuare mai târziu.

Clasa B are, de asemenea, aceeași metodă de afișare (). La crearea unui obiect de tip A și apelarea metodei de afișare, ieșirea va da B. Metoda de afișare de clasă A este suprascrisă de metoda de afișare de clasă B. Deci, ieșirea este B.

Atunci când există metode cu același nume și aceiași parametri, dar în două clase diferite și sunt legate de moștenire, este cunoscut sub numele de suprascriere. Este, de asemenea, cunoscut sub numele de legare târzie, legare dinamică, polimorfism de execuție. Supraîncărcarea și suprascrierea se numesc polimorfism. Este un concept major în programarea orientată pe obiecte.

Ce este Moștenirea în POO?

Consultați programul de mai jos scris în Java.

Diferența cheie dintre polimorfism și moștenire în POO
Diferența cheie dintre polimorfism și moștenire în POO

Figura 03: Exemplu de moștenire

Conform programului de mai sus, clasa A are metoda sum () și clasa B are metoda sub ().

Metoda sum () din clasa A poate fi utilizată în clasa B folosind cuvântul cheie extins. Reutilizarea proprietăților și metodelor dintr-o clasă existentă pentru a crea o nouă clasă este cunoscută sub numele de Moștenire. Chiar și nu există o metodă sum () în clasa B; este moștenită din clasa A. Moștenirea este utilă pentru reutilizarea codului. Clasa mai veche se numește clasa de bază, superclasa sau clasa părinte. Clasa derivată se numește subclasă sau clasă copil.

Tipuri de moștenire

Există diferite tipuri de moștenire. Ele sunt Moștenirea cu un singur nivel, Moștenirea cu mai multe niveluri, Moștenirea multiplă, Moștenirea ierarhică și Moștenirea hibridă.

Moștenirea unică

În moștenirea unică, există o singură super-clasă și o subclasă. Dacă clasa A este superclasa și clasa B este subclasa, toate proprietățile și metodele clasei A sunt accesibile de clasa B. Există un singur nivel; prin urmare, este numită moștenire la nivel unic.

Moștenirea pe mai multe niveluri

În Moștenirea pe mai multe niveluri există trei niveluri de clase. Clasa intermediară moștenește de la superclasă. Subclasa moștenește de la clasa intermediară. Dacă există trei clase, A, B și C și A este superclasa și B este clasa intermediară. Apoi B moștenește de la A și C moștenește de la B, este o moștenire pe mai multe niveluri.

Moștenirea multiplă

În Moștenirea multiplă, există multe super-clase și o subclasă. Dacă există trei super-clase numite A, B, C și D este subclasa, atunci clasa D poate moșteni de la A, B și C. Moștenirea multiplă este acceptată în limbajul de programare C ++. Nu este acceptat în limbaje de programare precum Java sau C #. Interfețele sunt utilizate pentru implementarea moștenirii multiple în aceste limbi.

Moștenirea ierarhică

Dacă există clase numite A ca superclase și B, C sunt subclase, acele subclase pot moșteni proprietăți și metode ale clasei A. Acest tip de moștenire este cunoscut sub numele de Moștenire ierarhică.

Moștenirea hibridă

Există un alt tip de moștenire special, cunoscut sub numele de Moștenire hibridă. Este o combinație de moșteniri pe mai multe niveluri și multiple. Dacă A, B, C și D sunt clase și B moștenește din A și D moștenește atât din B, cât și din C, atunci este o moștenire hibridă.

Care sunt asemănările dintre polimorfism și moștenire în POO?

Ambele sunt concepte de programare orientată pe obiecte

Care este diferența dintre polimorfism și moștenire în POO?

Difuzarea articolului din mijloc înainte de tabel

Polimorfism vs Moștenire în POO

Polimorfismul este capacitatea unui obiect de a se comporta în mai multe moduri. Moștenirea este crearea unei clase noi folosind proprietățile și metodele unei clase existente.
Utilizare
Polimorfismul este folosit pentru ca obiectele să apeleze la ce formă de metode în timpul compilării și în timpul rulării. Moștenirea este utilizată pentru reutilizarea codului.
Implementare
Polimorfismul este implementat în metode. Moștenirea este implementată în clase.
Categorii
Polimorfismul poate fi împărțit în suprasolicitare și suprascriere. Moștenirea poate fi împărțită în moștenire cu un singur nivel, cu mai multe niveluri, ierarhice, hibride și multiple.

Rezumat - Polimorfism vs Moștenire în POO

Polimorfismul și moștenirea sunt concepte majore în programarea orientată pe obiecte. Diferența dintre Polimorfism și Moștenire în PO este că Polimorfismul este o interfață comună pentru mai multe forme și Moștenirea este de a crea o nouă clasă folosind proprietăți și metode ale unei clase existente. Ambele concepte sunt utilizate pe scară largă în dezvoltarea de software.

Descărcați PDF Polimorfism vs Moștenire în POO

Puteți descărca versiunea PDF a acestui articol și o puteți folosi în scopuri offline, conform notei de citare. Vă rugăm să descărcați versiunea PDF aici Diferența dintre polimorfism și moștenire în POO

Recomandat: