Ključna razlika – zgodnja in pozna vezava
Zgodnje in pozno vezanje sta dva pojma, povezana s polimorfizmom. Zgodnje vezanje se pojavi v času prevajanja, medtem ko se pozna vezava pojavi med izvajanjem. Ključna razlika med zgodnjim in poznim povezovanjem je v tem, da zgodnje vezanje uporablja informacije o razredu za razrešitev klicanja metode, medtem ko pozna vezava uporablja objekt za razrešitev klicanja metode.
Programski jeziki, kot je Java, podpirajo objektno usmerjeno programiranje (OOP). Je paradigma, ki omogoča konstruiranje programa ali programske opreme z uporabo objektov. V programski opremi je več predmetov. Ti objekti so med seboj povezani in posredujejo sporočila z uporabo metod. Vsak predmet ima lastnosti in vedenja. Lastnosti so opisane z lastnostmi ali atributi. Vedenja so opisana z metodami. Objekt Študent ima lahko značilnosti, kot so ime, starost, in jih predstavljajo lastnosti. Objekt Študent ima lahko vedenja, kot sta učenje in branje, in ju predstavljajo metode. Eden glavnih stebrov OOP je polimorfizem. Objektu omogoča, da se obnaša na več načinov. Zgodnje in pozno vezanje sta dva pojma v polimorfizmu. Metode preobremenitve so povezane z zgodnjo vezavo. Preglasene metode so povezane s poznim povezovanjem.
Kaj je zgodnja vezava?
Pri zgodnjem povezovanju se informacije o razredu uporabljajo za razrešitev klicanja metode. Zgodnje povezovanje se pojavi v času prevajanja. Znana je tudi kot statična vezava. V tem procesu se vezava izvede, preden se program dejansko zažene. Metode preobremenitve so povezane z zgodnjo vezavo. Oglejte si spodnji program.
Slika 01: Izračunski razred
Slika 02: Glavni program za zgodnjo vezavo
V skladu z zgornjim programom vsebuje razred Izračun dodano metodo, ki sprejme dve celoštevilski vrednosti, in drugo dodano metodo, ki sprejme dve dvojni vrednosti. V glavnem programu se ustvari objekt tipa Izračun. Ko posreduje dve celi števili metodi dodajanja, bo ta poklicala metodo dodajanja, ki sprejme dve celi števili. Ko posredujete dve dvojni vrednosti metodi dodajanja, bo ta priklicala metodo, ki ustreza dvema dvojnima vrednostima. Ta postopek vezave poteka med prevajanjem. Vse zahtevane informacije so znane pred izvajanjem, kar poveča učinkovitost programa in hitrost izvajanja.
Kaj je pozna vezava?
Pri poznem povezovanju se objekt uporablja za razrešitev klicanja metode. Pozna vezava se pojavi med izvajanjem. Znana je tudi kot dinamična vezava. V tem procesu se vezava izvede ob izvajanju programa. Preglasene metode so povezane s poznim povezovanjem. Oglejte si spodnji program.
Slika 03: Razred oblike
Slika 04: Krožni razred
Slika 05: Razred trikotnika
Slika 06: Glavni program za pozno vezavo
Glede na zgornji program ima razred Shape metodo risanja. Razred Circle in razred Triangle razširjata razred Shape. Zato lahko ta dva razreda podedujeta atribute in metode razreda Shape. Shape Class je osnovni razred. Razreda krog in trikotnik sta izpeljana razreda. Razred Circle in razred Triangle imata tudi metodo risanja z lastnimi implementacijami. Torej metodo risanja v razredu Shape preglasijo metode risanja izpeljanih razredov.
V glavnem programu se ustvari referenčna spremenljivka s tipa Shape. V času prevajanja se bo prevajalnik skliceval samo na metodo risanja osnovnega razreda. Med izvajanjem se bodo izvajale različne metode risanja. Najprej bo s pokazal na objekt tipa Shape. Torej je priklicana metoda risanja razreda Shape. Nato bo s pokazal na objekt tipa Circle in priklical bo metodo risanja razreda Circle. Končno bo s pokazal na objekt tipa Trikotnik in priklical metodo risanja v razredu Trikotnik. Metode se kličejo glede na objekte. Zato se objekt uporablja za razrešitev klicanja metode v poznem povezovanju. Informacije, potrebne za vezavo, so na voljo v času izvajanja, zato je hitrost izvajanja počasnejša v primerjavi z zgodnjo vezavo.
Kakšna je podobnost med zgodnjo in pozno vezavo?
Tako zgodnja kot pozna vezava sta povezana s polimorfizmom, ki je steber OOP
Kakšna je razlika med zgodnjo in pozno vezavo?
Zgodnja vezava proti pozni vezavi |
|
Postopek uporabe informacij o razredu za razrešitev klicev metode, ki se zgodi med prevajanjem, se imenuje zgodnje povezovanje. | Postopek uporabe objekta za razrešitev klica metode, ki se zgodi med izvajanjem, se imenuje pozna vezava. |
Čas vezave | |
Zgodnja vezava se zgodi med prevajanjem. | Pozna vezava se zgodi med izvajanjem. |
Funkcionalnost | |
Early Binding uporablja informacije o razredu za razrešitev klicanja metode. | Pozna vezava uporablja objekt za razrešitev klicanja metode. |
Sinonimi | |
Zgodnja vezava je znana tudi kot statična vezava.. | Pozna vezava je znana tudi kot dinamična vezava. |
Pojav | |
Metode preobremenitve so povezane z zgodnjo vezavo. | Preglasene metode so povezane z uporabo poznega povezovanja. |
Hitrost izvajanja | |
Hitrost izvajanja je hitrejša pri zgodnji vezavi. | Hitrost izvajanja je manjša pri pozni vezavi. |
Povzetek – zgodnja ali pozna vezava
OOP se običajno uporablja za razvoj programske opreme. Eden glavnih stebrov OOP je polimorfizem. Zgodnja vezava in pozna vezava sta povezani s tem. Zgodnje vezanje se pojavi v času prevajanja, medtem ko se pozna vezava pojavi med izvajanjem. Pri preobremenitvi metode se povezovanje zgodi z uporabo zgodnje vezave. Pri preglasitvi metode se povezovanje zgodi z uporabo pozne vezave. Razlika med zgodnjim in poznim povezovanjem je v tem, da zgodnje povezovanje uporablja informacije o razredu za razrešitev klicanja metode, medtem ko pozno povezovanje uporablja objekt za razreševanje klicanja metode.