Hovedforskjell - Tidlig vs sen binding
Tidlig binding og sen binding er to begreper relatert til polymorfisme. Tidlig binding skjer ved kompileringstid, mens sen binding skjer ved kjøretid. Hovedforskjellen mellom tidlig og sen binding er at tidlig binding bruker klasseinformasjonen til å løse metodeanrop, mens sen binding bruker objektet til å løse metodeanrop.
Programmeringsspråk som Java støtter Object Oriented Programming (OOP). Det er et paradigme som gjør det mulig å konstruere programmet eller programvaren ved hjelp av objekter. Det er flere objekter i programvaren. Disse objektene er koblet til hverandre og sender meldinger ved hjelp av metoder. Hvert objekt har egenskaper og atferd. Egenskapene er beskrevet av egenskapene eller attributtene. Atferdene er beskrevet ved hjelp av metoder. Objektet Student kan ha egenskaper som navn, alder og de er representert av egenskaper. Objektet Student kan ha atferd som studere og lese, og de er representert ved metoder. En viktig søyle i OOP er polymorfisme. Det lar et objekt oppføre seg på flere måter. Tidlig binding og sen binding er to begreper i polymorfisme. Overbelastningsmetoder limes sammen med tidlig binding. Overstyrte metoder bindes ved hjelp av sen binding.
INNHOLD
1. Oversikt og nøkkelforskjell
2. Hva er tidlig binding
3. Hva er sen binding
4. Likheter mellom tidlig og sen binding
5. Sammenligning side om side - Tidlig vs sen binding i tabellform
6. Sammendrag
Hva er tidlig binding?
I Early Binding brukes klasseinformasjonen til å løse metodesamtaler. Tidlig binding skjer på kompileringstidspunktet. Det er også kjent som den statiske bindingen. I denne prosessen skjer bindingen før programmet faktisk kjører. Overbelastningsmetoder limes ved hjelp av tidlig binding. Se programmet nedenfor.
Figur 01: Beregningsklasse
Figur 02: Hovedprogram for tidlig binding
I henhold til det ovennevnte programmet inneholder beregningsklassen en add-metode som godtar to heltallverdier og en annen add-metode som godtar to doble verdier. I hovedprogrammet opprettes et objekt av typen Beregning. Når du overfører to heltall til add-metoden, vil den påkalle add-metoden som godtar to heltall. Når du sender to doble verdier til add-metoden, vil den påkalle metoden som tilsvarer to doble verdier. Denne bindingsprosessen skjer på kompileringstidspunktet. All nødvendig informasjon er kjent før kjøretiden, så det øker programeffektiviteten og kjøringshastigheten.
Hva er sen binding?
I sen binding er objektet brukt til å løse metoden anrop. Sen binding skjer ved kjøretid. Det er også kjent som dynamisk binding. I denne prosessen skjer bindingen ved programgjennomføring. Overstyrte metoder bindes ved hjelp av sen binding. Se programmet nedenfor.
Figur 03: Formklasse
Figur 04: Sirkelklasse
Figur 05: Trekantklasse
Figur 06: Hovedprogram for sen binding
I henhold til ovennevnte program har klasse Shape en tegningsmetode. Class Circle og class Triangle class utvider Shape-klassen. Derfor kan disse to klassene arve attributtene og metodene til Shape-klassen. Shape Class er basisklassen. Sirkel- og trekantklasser er avledede klasser. Klassen Circle og class Triangle har også tegnemetoden med sine egne implementeringer. Så tegnemetoden i formklasse overstyres av tegnemetodene til de avledede klassene.
I hovedprogrammet opprettes en referansevariabel s av typen Shape. Ved kompilering vil kompilatoren bare henvise til baseklassetegnemetoden. Ved kjøretid vil forskjellige tegnemetoder kjøres. Først vil s peke på objektet av typen Shape. Så, trekkes metoden til Shape-klasse på. Deretter vil s peke på objektet av typen Circle, og det vil påkalle tegnemetoden til Circle class. Til slutt vil s peke på objektet av typen Triangle, og det vil påkalle tegnemetoden i Triangle-klassen. Metodene kalles avhengig av gjenstandene. Derfor brukes objektet til å løse metoden som kalles inn sen binding. Informasjonen som kreves for binding blir gitt på kjøretid, slik at utførelseshastigheten er lavere sammenlignet med tidlig binding.
Hva er likheten mellom tidlig binding og sen binding?
Både tidlig binding og sen binding er relatert til polymorfisme som er en søyle i OOP
Hva er forskjellen mellom tidlig binding og sen binding?
Diff Article Midt før tabell
Tidlig binding mot sen binding |
|
Prosessen med å bruke klasseinformasjonen for å løse metodekalling som oppstår ved kompileringstid kalles Early Binding. | Prosessen med å bruke objektet til å løse metoden som kalles på kjøretid kalles for sen binding. |
Bindingstid | |
Tidlig binding skjer på kompileringstidspunktet. | Sen binding skjer på kjøretid. |
Funksjonalitet | |
Early Binding bruker klasseinformasjonen for å løse metodekall. | Sen innbinding bruker objektet til å løse metodesamtaler. |
Synonymer | |
Tidlig binding er også kjent som statisk binding. | Sen binding er også kjent som dynamisk binding. |
Hendelse | |
Overbelastningsmetoder limes ved hjelp av tidlig binding. | Overstyrte metoder bindes ved hjelp av sen binding. |
Utførelseshastighet | |
Utførelseshastigheten er raskere i tidlig binding. | Utførelseshastigheten er lavere i sen binding. |
Sammendrag - Tidlig vs sen binding
OOP brukes ofte til programvareutvikling. En viktig søyle i OOP er polymorfisme. Tidlig binding og sen binding er relatert til det. Tidlig innbinding skjer på kompileringstid mens sen innbinding skjer ved kjøretid. Ved metodeoverbelastning skjer bindingen ved hjelp av tidlig binding. Ved metodeoverstyring skjer bindingen ved bruk av sen binding. Forskjellen mellom Early og Late Binding er at Early Binding bruker klasseinformasjonen til å løse metodekalling, mens Late Binding bruker objektet til å løse metodekalling.