Suprascrierea metodei în Python
Publicat: 2023-01-28Cuprins
Condiții preliminare pentru a înțelege suprascrierea metodei:
Suprascrierea metodei este unul dintre cele mai semnificative concepte din programarea orientată pe obiecte. Implementarea unei anumite funcții în clasa fiu definită într-o clasă părinte poate fi modificată prin suprascrierea metodei. Suprascrierea metodei poate fi definită ca capacitatea clasei copil de a modifica execuția unei metode care este oferită de una dintre clasele sale părinte, denumită strămoși. Pentru a suprascrie o funcție, clasă trebuie să îndeplinească următoarele criterii.
- Clasă moștenită: nu este posibilă efectuarea suprascrierii funcției în cadrul unei clase. Derivarea unei clase copil dintr-o clasă părinte este necesară.
- Semnătura funcției redefinită în clasa copil și cea din clasa părinte ar trebui să fie aceeași. Cu alte cuvinte, funcția suprascrisă și funcția din clasa părinte ar trebui să aibă același număr de argumente și parametri.
O prezentare generală a suprascrierii metodei în Python:
După cum a fost definită mai devreme, proprietatea de suprascriere a metodei a unui limbaj de programare orientat pe obiecte în virtutea căreia subclasa oferă o implementare particulară a metodei care este deja oferită de una dintre super-clasele sale. Se spune că metoda dintr-o subclasă (clasa copil) suprascrie o metodă superclasă (clasa părinte) atunci când metoda subclasei are aceiași parametri sau semnătură, același nume și tip sau subtip de returnare identic ca metoda din superclasa.
Obiectul folosit pentru a invoca o metodă executată determină versiunea acesteia. Versiunea din superclasă va fi executată dacă un obiect din superclasă este folosit pentru a apela metoda. Totuși, dacă o metodă este invocată de un obiect din subclasă, atunci versiunea clasei copil va fi executată. Cu alți termeni, tipul obiectului la care se face referire este utilizat pentru a determina versiunea metodei care este suprascrisă și executată. Versiunea metodei suprascrise nu este determinată de tipul variabilei de referință.
Consultați cursurile de știință a datelor de la upGrad
Beneficiile depășirii metodei:
Avantajul principal al suprascrierii metodei în Python este că clasa oferă un model definit de sine pentru metoda moștenită, fără a modifica codul clasei părinte. Această caracteristică este, de asemenea, benefică în cazurile în care o clasă copil utilizează o clasă părinte cu mai multe clase copil. În acest caz, metoda și parametrii clasei părinte pot fi invocate de către clasa copil fără a modifica codul clasei părinte.
Explorați cursurile noastre populare de știință a datelor
Program Executive Postuniversitar în Știința Datelor de la IIITB | Program de certificat profesional în știința datelor pentru luarea deciziilor de afaceri | Master în Știința Datelor de la Universitatea din Arizona |
Program de certificat avansat în știința datelor de la IIITB | Program de certificat profesional în știința datelor și analiză de afaceri de la Universitatea din Maryland | Cursuri de știință a datelor |
Citiți articolele noastre populare despre știința datelor
Calea de carieră în știința datelor: un ghid cuprinzător de carieră | Creșterea carierei în știința datelor: viitorul muncii este aici | De ce este importantă știința datelor? 8 moduri în care știința datelor aduce valoare afacerii |
Relevanța științei datelor pentru manageri | Ultima fișă pentru știința datelor pe care ar trebui să o aibă fiecare cercetător de date | Top 6 motive pentru care ar trebui să devii un Data Scientist |
O zi în viața omului de știință a datelor: ce fac ei? | Mitul distrus: Știința datelor nu are nevoie de codare | Business Intelligence vs Data Science: Care sunt diferențele? |
Diferențele dintre suprascrierea metodei și supraîncărcarea metodei
Suprascrierea metodei | Supraîncărcarea metodei |
Metodele sau funcțiile din clasele părinte și copil trebuie să aibă aceleași semnături și aceleași nume. | Funcțiile sau metodele trebuie să aibă aceleași nume. Cu toate acestea, semnăturile lor nu trebuie să fie aceleași. |
Acesta este un exemplu de polimorfism de rulare. | Acest proces este un exemplu de polimorfism în timp de compilare. |
Moștenirea este o necesitate pentru înlocuirea metodei în Python. | Moștenirea claselor poate fi necesară în unele cazuri. Cu toate acestea, este posibil să nu fie necesar în toate cazurile. |
Suprascrierea metodei are loc între metodele din clasa părinte și clasa copil. Cu toate acestea, nu se poate întâmpla în cadrul unei clase. | Supraîncărcarea metodelor are loc între metodele din aceeași clasă. |
Această caracteristică este utilizată pentru a modifica comportamentul metodelor existente. | Este folosit pentru a adăuga mai mult la comportamentul metodei. |
Cel puțin două clase (o clasă copil și o clasă părinte) sunt necesare pentru a efectua suprascrierea metodei. | Nu sunt necesare clase suplimentare deoarece supraîncărcarea are loc între metodele din cadrul aceleiași clase. |
Dacă doriți să aflați în profunzime despre anularea metodei în Python, vă sugerăm să urmați cursul de 18 luni de Master în Știința Datelor . upGrad oferă acest curs de la Universitatea IIIT Bangalore și Liverpool John Moore. Cursul vă învață abilități precum Statistica, Analiza predictivă folosind Python, Învățare automată, Vizualizarea datelor, Analytics Big Data și multe altele. Studenții cu cunoștințe solide ale conceptelor Python sunt bine poziționați pentru a aborda subiecte precum Deep Learning, Natural Language Processing, Business Analytics și Data Engineering.