Forskjellen mellom tidlig og sen binding

Innholdsfortegnelse:

Forskjellen mellom tidlig og sen binding
Forskjellen mellom tidlig og sen binding

Video: Forskjellen mellom tidlig og sen binding

Video: Forskjellen mellom tidlig og sen binding
Video: Hubble - 15 years of discovery 2024, November
Anonim

Nøkkelforskjell – tidlig vs sen binding

Tidlig binding og sen binding er to begreper relatert til polymorfisme. Den tidlige bindingen skjer ved kompilering, mens den sene bindingen skjer ved kjøring. Den viktigste forskjellen mellom tidlig og sen binding er at tidlig binding bruker klasseinformasjonen til å løse metodekall mens sen binding bruker objektet til å løse metodekalling.

Programmeringsspråk som Java støtter objektorientert programmering (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 oppførsel. Egenskapene er beskrevet av egenskapene eller attributtene. Atferdene beskrives ved hjelp av metoder. Objektet Student kan ha egenskaper som navn, alder og de er representert med egenskaper. Objektet Student kan ha atferd som studere og lese, og de er representert ved metoder. En hovedpilar i OOP er polymorfisme. Det lar et objekt oppføre seg på flere måter. Tidlig binding og sen binding er to konsepter i polymorfisme. Overbelastningsmetoder er bundet ved hjelp av tidlig binding. Overstyrte metoder er bundet ved bruk av sen binding.

Hva er tidlig binding?

I Early Binding brukes klasseinformasjonen til å løse metodekall. 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 er bundet ved hjelp av tidlig binding. Se programmet nedenfor.

Forskjellen mellom tidlig og sen binding
Forskjellen mellom tidlig og sen binding

Figur 01: Beregningsklasse

Forskjellen mellom tidlig og sen binding_Figur 02
Forskjellen mellom tidlig og sen binding_Figur 02

Figur 02: Hovedprogram for tidlig binding

I følge programmet ovenfor inneholder Calculation-klassen en add-metode som aksepterer to heltallsverdier og en annen add-metode som aksepterer to doble verdier. I hovedprogrammet opprettes et objekt av typen Beregning. Når du sender 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øretid, så det øker programmets effektivitet og utførelseshastighet.

Hva er sen binding?

I Late Binding brukes objektet til å løse metodekall. Sen binding skjer ved kjøring. Det er også kjent som dynamisk binding. I denne prosessen skjer bindingen ved programkjøring. Overstyrte metoder er bundet ved bruk av sen binding. Se programmet nedenfor.

Forskjellen mellom tidlig og sen binding_Figur 03
Forskjellen mellom tidlig og sen binding_Figur 03

Figur 03: Shape Class

Forskjellen mellom tidlig og sen binding_Figur 04
Forskjellen mellom tidlig og sen binding_Figur 04

Figur 04: Circle Class

Forskjellen mellom tidlig og sen binding_Figur 05
Forskjellen mellom tidlig og sen binding_Figur 05

Figur 05: Trekantklasse

Nøkkelforskjellen mellom tidlig og sen binding
Nøkkelforskjellen mellom tidlig og sen binding

Figur 06: Hovedprogram for sen innbinding

I følge programmet ovenfor har klassen Shape en tegnemetode. Klassesirkel og klasse Triangel-klassen 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 Sirkel og klassetriangel har også tegnemetoden med egne implementeringer. Så tegnemetoden i Shape-klassen overstyres av trekningsmetodene til de avledede klassene.

I hovedprogrammet opprettes en referansevariabel s av typen Shape. På kompileringstidspunktet vil kompilatoren kun referere basisklassens tegnemetode. Under kjøring vil forskjellige tegnemetoder utføres. Først vil s peke på objektet av typen Shape. Så tegnemetoden til Shape-klassen påkalles. Deretter vil s-en peke på objektet av typen Circle, og den vil påkalle tegnemetoden til Circle-klassen. Til slutt vil s peke på objektet av typen Triangle, og det vil påkalle tegnemetoden i Triangle-klassen. Metodene kalles avhengig av objektene. Derfor brukes objektet til å løse metodekalling i Late Binding. Informasjonen som kreves for binding, oppgis ved kjøretid, så utførelseshastigheten er langsommere 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 pilar i OOP

Hva er forskjellen mellom tidlig innbinding og sen innbinding?

Tidlig binding vs sen binding

Prosessen med å bruke klasseinformasjonen til å løse metodekall som skjer på kompileringstidspunktet, kalles Early Binding. Prosessen med å bruke objektet til å løse metodekall som skjer under kjøretid kalles Late Binding.
Tidspunkt for binding
Tidlig binding skjer på kompileringstidspunktet. Sen binding skjer under kjøretid.
Functionality
Early Binding bruker klasseinformasjonen til å løse metodeanrop. Sen binding bruker objektet til å løse metodeanrop.
Synonymer
Tidlig binding er også kjent som statisk binding.. Sen binding er også kjent som dynamisk binding.
Forekomst
Overbelastningsmetoder er bundet med tidlig binding. Overstyrte metoder er bundet ved bruk av sen binding.
Utførelseshastighet
Utføringshastigheten er raskere i tidlig binding. Utførelseshastigheten er lavere ved sen binding.

Sammendrag – Tidlig vs Sen binding

OOP brukes ofte til programvareutvikling. En hovedpilar i OOP er polymorfisme. Tidlig binding og sen binding er relatert til det. Tidlig binding skjer ved kompilering, mens sen binding skjer ved kjøretid. Ved metodeoverbelastning skjer bindingen ved bruk av tidlig binding. Ved metodeoverstyring skjer bindingen ved å bruke den sene bindingen. Forskjellen mellom Early og Late Binding er at Early Binding bruker klasseinformasjonen til å løse metodekall mens Late Binding bruker objektet til å løse metodekalling.

Anbefalt: