Forskjellen mellom forekomstvariabel og lokal variabel

Forskjellen mellom forekomstvariabel og lokal variabel
Forskjellen mellom forekomstvariabel og lokal variabel

Video: Forskjellen mellom forekomstvariabel og lokal variabel

Video: Forskjellen mellom forekomstvariabel og lokal variabel
Video: Idébanken: Barnehage med nyskapende kobling mellom ergonomi og pedagogikk 2024, Juli
Anonim

Forekomstvariabel vs lokal variabel

En forekomstvariabel er en type variabel som finnes i objektorientert programmering. Det er en variabel som er definert i en klasse, og hvert objekt i den klassen har en separat kopi av den variabelen. På den annen side er bruken av lokale variabler ikke begrenset til objektorienterte programmeringsspråk. Det er en variabel som bare kan vurderes innenfor en bestemt kodeblokk (f.eks. funksjon, sløyfeblokk, etc.) der den er definert. Av denne grunn sies lokale variabler å ha et lok alt omfang.

Hva er en forekomstvariabel?

Forekomstvariabler brukes i objektorientert programmering for å lagre tilstanden til hvert objekt i en klasse. De er også kjent som medlemsvariabler eller feltvariabler. Forekomstvariabler er deklarert uten å bruke det statiske nøkkelordet i Java. Verdiene som er lagret i forekomstvariabler er unike for hvert objekt (hvert objekt har en separat kopi), og verdiene som er lagret i dem representerer tilstanden til det objektet. Plass for en forekomstvariabel tildeles i heapen når det objektet er allokert i heapen. Derfor holdes instansvariabler i minnet så lenge objektet er live. For eksempel er fargen på en bil uavhengig av fargen på en annen bil. Så fargen på et bilobjekt kan lagres i en instansvariabel. I praksis blir instansvariabler deklarert inne i klasser og utenfor metoder. Vanligvis er forekomstvariabler erklært som private, slik at de kun kan nås innenfor klassen den er deklarert.

Hva er en lokal variabel?

Lokale variabler er variabler som har et lok alt omfang, og de er deklarert innenfor en bestemt kodeblokk. Lokale variabler kan sees på som variabler som brukes av en metode for å lagre dens midlertidige tilstand. Omfanget av en lokal variabel bestemmes ved å bruke plasseringen som variabelen er deklarert, og spesielle nøkkelord brukes ikke til dette formålet. Vanligvis er tilgangen til en lokal variabel begrenset innenfor kodeblokken som den er deklarert (dvs. mellom åpnings- og lukkeparentesene til den kodeblokken). Lokale variabler lagres vanligvis i anropsstakken. Dette vil tillate rekursive funksjonsanrop å opprettholde sine egne kopier av de lokale variablene som skal lagres i separate minneadresserom. Når metoden fullfører sin kjøring, blir informasjon om den metoden spratt ut fra anropsstakken, og ødelegger også de lokale variablene som ble lagret.

Hva er forskjellen mellom forekomstvariabel og lokal variabel?

Forekomstvariabler er deklarert innenfor klasser utenfor metoder, og de lagrer tilstanden til et objekt, mens lokale variabler er deklarert innenfor kodeblokker, og de brukes til å lagre tilstanden til en metode. En forekomstvariabel er live så lenge objektet som inneholder den variabelen er live, mens en lokal variabel er live under kjøringen av den metoden/kodeblokken. En forekomstvariabel (som er erklært offentlig) kan nås innenfor klassen, mens en lokal variabel kun kan nås innenfor kodeblokken som den er deklarert. Bruk av instansvariabler er kun begrenset til objektorientert programmering, mens lokale variabler ikke har en slik begrensning.

Anbefalt: