Erinevus meetodi ülekoormamise ja alistamise vahel

Meetodi ülekoormamine

Meetodi ülekoormamine, tuntud ka kui funktsiooni ülekoormamine või ajaline polümorfism, on kontseptsioon, mille kohaselt on kaks või enam meetodit sama nimega, kuid erineva allkirjaga, samas ulatuses. Seda funktsiooni toetavaid programmeerimiskeeli on palju: Ada, C ++, C #, D ja Java.

Näide meetodi ülekoormamise kohta C # -s
Nagu ülaltoodud näites näidatud, on meetod 'polügoon' 3 korda erineva meetodi allkirjaga üle koormatud, st tüüp või parameetrite arv on erinev.

Meetod ülimuslik

Meetodi alistamine, tuntud ka kui Funktsiooni alistamine või Käivitusaja polümorfism, on OOP-funktsioon, mis võimaldab lasteklassil pakkuda vanemklassis määratletud meetodile oma rakendust. Lasteklassis rakendamine alistab põhiklassis meetodi määratluse, eeldusel, et lasteklassis kasutataval meetodil peaks olema sama nimi, allkiri ja tagastamise tüüp.

Näide meetodi ülimusest C # korral
Siin alistab Source2 klassis viigimismeetod Source1 klassis määratletud viigimeetodi.

Erinevus meetodi ülekoormamise ja meetodi ületamise vahel

  1. Rakenduses Meetod peab ülelaadimise meetoditel olema erinev allkiri. Meetodi korral peavad ülimuslikel meetoditel olema sama allkiri.
  2. Funktsiooni ülekoormamine on meetodi käitumise täiendav lisamine või laiendamine. Funktsiooni ülimuslikkus on meetodi käitumise täielik “muutmine” või “uuesti määratlemine”.
  3. Kompileeritud aja polümorfismi saavutamiseks kasutatakse meetodi ülekoormamist; Kestuspolümorfismi saavutamiseks kasutatakse meetodi alistamist.
  4. Meetodi / funktsiooni ülekoormamise korral teab kompilaator, milline objekt määrati komplekteerimise ajal millisele klassile, kuid meetodi puhul pole selle teabe ülekandmine teada kuni käitusajani.
  5. Funktsiooni ülekoormamine toimub samas klassis, samas kui ületamine toimub põhiklassist tuletatud klassis.
IT