Programarea orientată pe obiecte (OOP) este folosită în mod obișnuit pentru a dezvolta software. Multe limbi de programare suportă programarea orientată pe obiecte. Programarea orientată pe obiecte este o metodologie pentru a proiecta un program folosind clase și obiecte. O clasă în OOP este un model pentru a crea un obiect. O clasă are proprietăți și metode. Un obiect este o instanță a unei clase. POR conține patru piloni cum ar fi moștenirea, polimorfismul, abstractizarea și încapsularea. Acest articol discută diferența dintre polimorfism și moștenire în PLO. diferența cheie între polimorfism și moștenire în PLO este asta Polimorfismul este abilitatea unui obiect de a se comporta în mai multe moduri, iar moștenirea este crearea unei noi clase utilizând proprietățile și metodele unei clase existente.
1. Prezentare generală și diferență cheie
2. Ce este polimorfismul în PLO
3. Ce este moștenirea în PLO
4. Asemănări între polimorfism și moștenire în PLO
5. Comparație comparativă comparativă - Polimorfism vs. moștenire în PLO în formă tabulară
6. rezumat
Polimorfismul este de a indica mai multe forme. Un obiect poate avea mai multe comportamente. Polimorfismul poate fi împărțit în două categorii. Ele sunt supraîncărcate și suprasolicitate.
Consultați programul de mai jos scris în Java.
Figura 01: Supraîncărcarea
Conform programului de mai sus, se creează un obiect de tip A. Atunci când sunați obj.sum (); acesta va da rezultatele legate de metoda sum (). Atunci când apelați obj.sum (2,3); el va da rezultatele legate de suma (int a, int b). Se observă 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 legarea statică sau compilarea polimorfismului timpului.
Un alt tip de polimorfism este imperative. Consultați programul de mai jos scris în Java.
Figura 02: Înlăturarea
Conform programului de mai sus, există o metodă de afișare () în clasa A. Clasa B se extinde de la clasa A. Prin urmare, toate metodele din clasa A sunt accesibile de clasa B. Este moștenire. Conceptul de moștenire este descris mai jos.
Clasa B are, de asemenea, aceeași afișare a metodei (). La crearea unui obiect de tip A și a metodei de afișare a apelului, ieșirea va da metoda de afișare B. Clasa A este suprascrisă de metoda de afișare a clasei B. Deci, ieșirea este B.
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ă ca o depășire. Este, de asemenea, cunoscut sub numele de Legarea târzie, legarea dinamică, polimorfismul de execuție. Supraîncărcarea și suprascrierea sunt numite Polimorfism. Este un concept major în Programarea Object Oriented.
Consultați programul de mai jos scris în Java.
Figura 03: Exemplu de moștenire
Conform programului de mai sus, clasa A are suma sumă () și clasa B are metoda sub ().
Metoda sum () din clasa A poate fi utilizată în clasa B utilizând cuvântul cheie extins. Reutilizarea proprietăților și a metodelor dintr-o clasă existentă pentru a crea o nouă clasă este cunoscută sub denumirea de Moștenire. Nici măcar nu există o metodă sum () în clasa B; este moștenit din clasa A. Moștenirea este utilă pentru reutilizarea codului. Clasa mai veche este numită clasa de bază, superclasa sau clasa părinților. Clasa derivată este numită subclasă sau clasa copil.
Există diferite tipuri de moștenire. Acestea sunt moștenire la nivel unic, moștenire pe mai multe niveluri, moștenire multiplă, moștenire ierarhică și moștenire hibridă.
În moștenirea unică, există o clasă super și o subclasă. Dacă clasa A este clasa super și clasa B este subclass, toate proprietățile și metodele clasei A sunt accesibile de clasa B. Există un singur nivel; prin urmare, se numește moștenire pe un singur nivel.
În Moștenirea pe mai multe niveluri există trei niveluri de clase. Clasa intermediară moștenește din clasa super. Clasa subactivă moștenește din clasa intermediară. Dacă există trei clase ca A, B și C și A este clasa super și B este clasa intermediară. Atunci B moșteneste de la A și C moșteneste de la B, este o Moștenire pe mai multe niveluri.
În moștenirea multiplă, există multe super-clase și o sub-clasă. 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 susținută în limbajul de programare C ++. Nu este acceptată în limbi de programare precum Java sau C #. Interfețele sunt utilizate pentru implementarea moștenirii multiple în aceste limbi.
Dacă există clase numite A ca super clase și B, C sunt sub clase, acele subclase pot moșteni proprietăți și metode ale clasei A. Acest tip de mostenire este cunoscut ca moștenire ierarhică.
Există un alt tip special de moștenire, cunoscut sub numele de Moștenire hibridă. Este o combinație de moșteniri multiple ș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ă.
Polimorfism vs moștenire în PLO | |
Polimorfismul este capacitatea unui obiect de a se comporta în mai multe moduri. | Moștenirea este crearea unei noi clase utilizând proprietățile și metodele unei clase existente. |
folosire | |
Polimorfismul este folosit pentru obiecte pentru a apela ce formă de metode la timpul de compilare și timpul de execuție. | Moștenirea este utilizată pentru reutilizarea codului. |
Punerea în aplicare | |
Polimorfismul este implementat în metode. | Moștenirea este implementată în clase. |
Categorii | |
Polimorfismul poate fi împărțit în suprasolicitare și suprasolicitare. | Moștenirea poate fi împărțită în moștenire cu un singur nivel, multi-nivel, ierarhic, hibrid și multiplu. |
Polimorfismul și moștenirea sunt concepte majore în programarea orientată pe obiecte. Diferența dintre polimorfism și moștenire în OOP este că polimorfismul este o interfață comună pentru mai multe forme, iar moștenirea este crearea unei noi clase utilizând proprietățile și metodele unei clase existente. Ambele concepte sunt utilizate pe scară largă în dezvoltarea de software.
Puteți descărca versiunea PDF a acestui articol și o puteți utiliza în scopuri offline conform notei de citare. Descărcați versiunea PDF aici Diferența dintre polimorfism și moștenire în PLO