Nøkkelforskjell – klasse vs instansvariabler
De fleste moderne programmeringsspråk støtter objektorientert programmering. Et objekt inneholder data eller attributter. Et objekt har bestemt atferd. De er kjent som metoder. Et program kan modelleres ved hjelp av objekter. En programvare er en samling av programmer. Derfor kan en programvare designes og implementeres ved hjelp av objekter. Objekter samhandles ved hjelp av metoder. Objektorientert programmering forbedrer kodemodularitet og gjenbrukbarhet. Det bør være en klasse for å lage objekter. En klasse er en blåkopi for å lage et objekt. Derfor er et objekt en forekomst av en klasse. Ved programmering måtte dataene lagres. Data lagres i minneplasseringer. Disse minnestedene kalles variabler. En medlemsvariabel er en variabel som er knyttet til et spesifikt objekt. Den er tilgjengelig for alle metodene. Det er to typer medlemsvariabler som er klassevariabler og instansvariabler. Den viktigste forskjellen mellom klasse- og forekomstvariabler er at hvis det bare er én kopi av variabelen som deles med alle forekomster av klassen, kalles disse variablene klassevariabler, og hvis hver forekomst av klassen har sin egen kopi av variabelen, disse variablene kalles forekomstvariabler.
Hva er klassevariabler?
Når det bare er én kopi av variabelen som deles med alle forekomster av klassen, kalles disse variablene som klassevariabler. Klassevariabler er variabler deklarert innenfor klassen utenfor en hvilken som helst metode. Disse variablene inneholder nøkkelordet static. Disse variablene er assosiert med klassen, ikke til objektet.
Figur 01: Klassevariabler og instansvariabler
Se kodestykket nedenfor med klassevariabler.
offentlig klasseansatt {
public static int id;
offentlig statisk dobbeltlønn;
}
offentlig klasseprøve {
public static void main(string args){
Employee e1=new Employee();
Employee e2=new Employee();
}
}
I følge programmet ovenfor er e1 og e2 objekter av typen Employee. Begge vil ha samme kopi av minne. Hvis e1.id=1 og utskrift av e2.id vil også gi verdien 1. Det er mulig å skrive ut id- og lønnsverdiene ved å bruke Employee-klassenavnet som for eksempel Employee. ID, Employee.salary etc.
Hva er forekomstvariabler?
Når hver forekomst av klassen har sin egen kopi av variabelen, er disse variablene kjent som forekomstvariabler. Se programmet nedenfor.
offentlig klasseansatt {
public int id;
offentlig dobbel lønn;
}
test i offentlig klasse{
public static void main(string args){
Employee e1=new Employee();
e1.id=1;
e1.salary=20000;
Employee e2=new Employee();
e2.id=2;
e2. lønn=25000;
}
}
I hovedprogrammet er e1 og e2 referanser til objektene av typen Ansatt. Det er mulig å tildele verdier for id og lønn ved å bruke punktoperatoren som e1.id, e1. lønn etc. ID og lønn i klassen Ansatt er kjent som instansvariabler.e1 og e2 er separate objekter. Hvert objekt vil ha en egen kopi av forekomstvariabler. e1 vil ha separat id og lønn og e2 vil ha separat id og lønn. Så forekomstvariablene opprettes når objektet eller forekomsten opprettes.
Hva er likhetene mellom klasse- og instansvariabler?
- Begge er typer variabler.
- Begge variablene er innenfor en klasse, men utenfor hvilken som helst metode.
Hva er forskjellen mellom klasse- og instansvariabler?
Klassevariabler vs instansvariabler |
|
Klassevariabler er variabler der det bare er én kopi av variabelen som er delt med alle forekomster av klassen. | Forekomstvariabler er variabler når hver forekomst av klassen har sin egen kopi av variabelen. |
Association | |
Klassevariabler er knyttet til klassen. | Forekomstvariabler er assosiert med objekter. |
Antall kopier | |
Klassevariabler oppretter én kopi for alle objekter. | Forekomstvariabler lager separat kopi for hvert objekt. |
Søkeord | |
Klassevariabler bør ha det statiske søkeordet. | Forekomstvariabler krever ikke et spesielt nøkkelord som statisk. |
Sammendrag – Klasse vs. instansvariabler
Objektorientert programmering er et stort programmeringsparadigme. Det hjelper å modellere en programvare ved hjelp av objekter. Objekter lages ved hjelp av klasser. Objektskaping er også kjent som instansiering. En klasse gir en blåkopi for å lage et objekt. En medlemsvariabel er en variabel som er knyttet til et spesifikt objekt. Den er tilgjengelig for alle metodene. Det er to typer medlemsvariabler som, klassevariabler og instansvariabler. Forskjellen mellom klasse- og forekomstvariabler er at hvis det bare er én kopi av variabelen som deles med alle forekomster av klassen, kalles disse variablene klassevariabler, og hvis hver forekomst av klassen har sin egen kopi av variabelen, variabler kalles forekomstvariabler.
Last ned PDF-versjonen av klasse vs instansvariabler
Du kan laste ned PDF-versjonen av denne artikkelen og bruke den til offline-formål i henhold til sitat. Last ned PDF-versjonen her: Difference Between Class and Instance Variables