Razlika između ranog i kasnog uvezivanja

Sadržaj:

Razlika između ranog i kasnog uvezivanja
Razlika između ranog i kasnog uvezivanja

Video: Razlika između ranog i kasnog uvezivanja

Video: Razlika između ranog i kasnog uvezivanja
Video: Biologija 8 - Živčana stanica i živac 2024, Studeni
Anonim

Ključna razlika – rano naspram kasnog vezivanja

Rano vezivanje i kasno vezivanje dva su pojma povezana s polimorfizmom. Rano vezanje događa se tijekom kompajliranja, dok se kasno povezivanje događa tijekom izvođenja. Ključna razlika između ranog i kasnog vezivanja je u tome što rano vezivanje koristi informacije o klasi za rješavanje poziva metode, dok kasno vezivanje koristi objekt za rješavanje poziva metode.

Programski jezici kao što je Java podržavaju objektno orijentirano programiranje (OOP). To je paradigma koja omogućuje konstruiranje programa ili softvera pomoću objekata. Postoji više objekata u softveru. Ovi objekti su povezani jedan s drugim i prosljeđuju poruke pomoću metoda. Svaki objekt ima karakteristike i ponašanja. Karakteristike su opisane svojstvima ili atributima. Ponašanja su opisana pomoću metoda. Objekt Student može imati karakteristike kao što su ime, dob i one su predstavljene svojstvima. Objekt Student može imati ponašanja kao što su učenje i čitanje, a oni su predstavljeni metodama. Jedan od glavnih stupova OOP-a je polimorfizam. Omogućuje objektu da se ponaša na više načina. Rano vezivanje i kasno vezivanje dva su pojma u polimorfizmu. Metode preopterećenja povezuju se ranim vezanjem. Nadjačane metode su povezane pomoću kasnog povezivanja.

Što je rano uvezivanje?

U ranom povezivanju, informacije o klasi koriste se za rješavanje poziva metode. Rano vezivanje događa se tijekom kompilacije. Također je poznato kao statičko uvezivanje. U ovom procesu, veza se događa prije nego što se program stvarno pokrene. Metode preopterećenja povezuju se ranim vezanjem. Pogledajte donji program.

Razlika između ranog i kasnog uvezivanja
Razlika između ranog i kasnog uvezivanja

Slika 01: Klasa izračuna

Razlika između ranog i kasnog uvezivanja_Slika 02
Razlika između ranog i kasnog uvezivanja_Slika 02

Slika 02: Glavni program za rano uvezivanje

Prema gornjem programu, klasa Izračun sadrži metodu zbrajanja koja prihvaća dvije cjelobrojne vrijednosti i drugu metodu zbrajanja koja prihvaća dvije dvostruke vrijednosti. U glavnom programu kreira se objekt tipa Izračun. Prilikom prosljeđivanja dva cijela broja metodi dodavanja, ona će pozvati metodu dodavanja koja prihvaća dva cijela broja. Prilikom prosljeđivanja dvije dvostruke vrijednosti metodi dodavanja, ona će pozvati metodu koja odgovara dvjema dvostrukim vrijednostima. Ovaj proces vezivanja događa se tijekom kompajliranja. Sve potrebne informacije poznate su prije izvođenja, što povećava učinkovitost programa i brzinu izvršenja.

Što je kasno uvezivanje?

U kasnom povezivanju, objekt se koristi za rješavanje poziva metode. Kasno vezanje događa se tijekom izvođenja. Također je poznato kao dinamičko uvezivanje. U ovom procesu, vezanje se događa pri izvođenju programa. Nadjačane metode povezuju se pomoću kasnog povezivanja. Pogledajte donji program.

Razlika između ranog i kasnog uvezivanja_Slika 03
Razlika između ranog i kasnog uvezivanja_Slika 03

Slika 03: Klasa oblika

Razlika između ranog i kasnog uvezivanja_Slika 04
Razlika između ranog i kasnog uvezivanja_Slika 04

Slika 04: Kružna klasa

Razlika između ranog i kasnog uvezivanja_Slika 05
Razlika između ranog i kasnog uvezivanja_Slika 05

Slika 05: Klasa trokuta

Ključna razlika između ranog i kasnog uvezivanja
Ključna razlika između ranog i kasnog uvezivanja

Slika 06: Glavni program za kasno uvezivanje

Prema gornjem programu, klasa Shape ima metodu crtanja. Klasa Krug i klasa Trokut proširuju klasu Oblik. Stoga ove dvije klase mogu naslijediti atribute i metode klase Shape. Shape Class je osnovna klasa. Klase Krug i Trokut su izvedene klase. Klase Krug i Trokut također imaju metodu crtanja sa svojim vlastitim implementacijama. Dakle, metoda crtanja u klasi Shape nadjačana je metodama crtanja izvedenih klasa.

U glavnom programu kreira se referentna varijabla s tipa Shape. U vrijeme prevođenja, prevodilac će uputiti samo metodu crtanja osnovne klase. Tijekom izvođenja izvršavat će se različite metode crtanja. Prvo, s će pokazivati na objekt tipa Shape. Dakle, poziva se metoda crtanja klase Shape. Zatim će s pokazati na objekt tipa Circle, i on će pozvati metodu crtanja klase Circle. Konačno, s će pokazati na objekt tipa Trokut i pozvati metodu crtanja u klasi Trokut. Metode se pozivaju ovisno o objektima. Stoga se objekt koristi za rješavanje poziva metode u kasnom povezivanju. Informacije potrebne za povezivanje daju se tijekom izvođenja, tako da je brzina izvršenja sporija u usporedbi s ranim povezivanjem.

Koja je sličnost između ranog i kasnog uvezivanja?

I Early Binding i Late Binding povezani su s polimorfizmom koji je stup OOP-a

Koja je razlika između ranog i kasnog uvezivanja?

Rano uvezivanje u odnosu na kasno uvezivanje

Proces korištenja informacija o klasi za razrješavanje poziva metode koji se događa tijekom kompajliranja naziva se rano vezivanje. Proces korištenja objekta za rješavanje poziva metode koji se događa tijekom izvođenja naziva se kasno vezivanje.
Vrijeme uvezivanja
Rano vezivanje događa se tijekom kompajliranja. Kasno povezivanje događa se tijekom izvođenja.
Funkcionalnost
Early Binding koristi informacije o klasi za rješavanje poziva metode. Kasno vezivanje koristi objekt za rješavanje poziva metode.
Sinonimi
Rano uvezivanje također je poznato kao statičko uvezivanje.. Kasno uvezivanje također je poznato kao dinamičko uvezivanje.
Pojava
Metode preopterećenja povezane su pomoću ranog povezivanja. Nadjačane metode su povezane pomoću kasnog povezivanja.
Brzina izvršenja
Brzina izvršenja je veća u ranom povezivanju. Brzina izvršenja niža je u kasnom povezivanju.

Sažetak – Rano nasuprot kasnom uvezivanju

OOP se obično koristi za razvoj softvera. Jedan od glavnih stupova OOP-a je polimorfizam. Early Binding i Late Binding povezani su s tim. Rano vezanje događa se tijekom kompajliranja, dok se kasno povezivanje događa tijekom izvođenja. Kod preopterećenja metode, povezivanje se događa pomoću ranog povezivanja. U nadjačavanju metode, povezivanje se događa korištenjem kasnog povezivanja. Razlika između ranog i kasnog vezivanja je u tome što rano vezivanje koristi informacije o klasi za rješavanje poziva metode, dok kasno vezivanje koristi objekt za rješavanje poziva metode.

Preporučeni: