Mis on Pythoni meetodi ülekoormamine ja kuidas see töötab?



Selles artiklis selgitatakse, mis on pythoni meetodi ülekoormamine ja kuidas see töötab. Meetodi põhjalikuks selgitamiseks on kaks erinevat näidet.

Kahel meetodil ei saa olla sama nime . Meetodi ülekoormamine Pythonis on funktsioon, mis võimaldab samal operaatoril olla erinev tähendus. Selles artiklis vaatleme Pythoni meetodi ülekoormamise funktsiooni ja kuidas seda kasutataksemeetodite ülekoormamine järgmises järjestuses:

Mis on ülekoormus?

Ülekoormus on funktsiooni või operaatori võime käituda erineval viisil parameetrite põhjal, mis edastatakse või operandid, millele operaator tegutseb.





Mõned eelised ülekoormuse kasutamise võimalused on:

mis on Java-s anonüümne klass
  • Meetodi ülekoormamine soodustab korduvkasutatavust. Näiteks selle asemel, et kirjutada mitu meetodit, mis erinevad vaid veidi, võime kirjutada ühe meetodi ja selle üle koormata.



  • Ülekoormus parandab ka koodi selgust ja välistab keerukuse.

Ülekoormus on väga kasulik mõiste. Sellel on siiski mitmeid puudused sellega seotud.

  • Ülekoormus võib kogu kasutamisel tekitada segadust piirid. Liigsel kasutamisel muutub ülekoormatud funktsioonide haldamine tülikaks.



Meetod Ülekoormus Pythonis

Pythonis saate luua meetodi, mida saab kutsuda erineval viisil. Nii et teil võib olla meetod, millel on null, üks või mitu parameetrit. Sõltuvalt meetodi definitsioonist võime seda nimetada nulli, ühe või mitme argumendiga.

Ühe meetodi või funktsiooni korral saate parameetrite arvu ise määrata. Seda sama meetodi erineval viisil kutsumise protsessi nimetatakse meetodi ülekoormamiseks.

Meetodi ülekoormamise näited

Nüüd, kui teate, mis on Pythoni meetodi ülekoormamine, võtame näite. Siin loome ühe klassi Tere() . Selle meetodi esimeseks parameetriks määratakse Puudub. See annab meile võimaluse helistada sellele parameetriga või ilma.

goto c ++ näide

Klassist lähtuvalt luuakse ka objekt ja selle meetodi kutsume nulli ja ühe parameetri abil.

Näide 1:

#! / usr / bin / env pythoni klass Isik: def Tere (ise, nimi = Puudub): kui nimi pole Puudub: print ('Tere' + nimi) muu: print ('Tere') # Loo eksemplar obj = Isik () # Kutsuge meetodit obj.Hello () # Kutsu meetodit parameetriga obj.Hello ('Edureka')

Väljund:

Tere Tere Edureka

Meetodi ülekoormamise selgitamiseks võime nüüd meetodit Tere () kutsuda kahel viisil:

obj tere () obj tere ('Edureka')

Ülaltoodud näites oleme loonud meetodi, mida saab kutsuda vähemate argumentidega, kui see on lubatud lubada. Samuti ei piirdu see kahega muutujad ja teie meetodil võib olla rohkem muutujaid, mis on valikulised.

Võtame nüüd teise näide aru saada meetodi ülekoormamisest .

mis vahe on jquery ja javascripti vahel

Näide 2:

Järgmises näites koormame ala meetodit üle. Kui argumenti pole, tagastab see 0. Ja kui meil on üks argument, tagastab see väärtuse ruudu ja eeldab, et arvutate ruudu pindala. Samuti, kui meil on kaks argumenti, tagastab see kahe väärtuse korrutise ja eeldab, et arvutate ristküliku ala.

# klassi klass Arvuta: # ala meetod def ala (ise, x = Puudub, y = Puudub): kui x! = Puudub ja y! = Puudub: return x * y elif x! = Puudub: return x * x else: return 0 # object obj = Compute () # null argument print ('Area Value:', obj.area ()) # one argument print ('Area Value:', obj.area (4)) # two argument print ('Area Väärtus: ', obj.area (3, 5))

Ülaltoodud kood annab meile järgmise väljund:

Pindala väärtus: 0 Pindala väärtus: 16 Pindala väärtus: 15

Sellega oleme jõudnud oma artikli lõppu. Loodan, et saite aru, mis on Pythoni meetodi ülekoormamine ja kuidas see töötab.

Püütoni ja selle erinevate rakenduste põhjalike teadmiste saamiseks võite registreeruda otseülekandeks autor Edureka 24/7 toe ja eluaegse juurdepääsuga.

Kas teil on meile küsimus? Palun mainige seda selle blogi 'Meetodi ülekoormamine Pythonis' kommentaaride jaotises ja võtame teiega ühendust niipea kui võimalik.