Diferența dintre variabilele de clasă și de instanță

Diferența cheie - clasă versus variabile de instanță
 

Majoritatea limbajelor moderne de programare suportă programarea orientată pe obiecte. Un obiect conține date sau atribute. Un obiect are anumite comportamente. Ele sunt cunoscute ca metode. Un program poate fi modelul folosind obiecte. Un software este o colecție de programe. Prin urmare, un software poate fi proiectat și implementat folosind obiecte. Obiectele sunt interacționate folosind metode. Programarea orientată pe obiecte îmbunătățește modularitatea și reutilizarea codurilor. Ar trebui să existe o clasă pentru a crea obiecte. O clasă este un model pentru a crea un obiect. Prin urmare, un obiect este o instanță a unei clase. În programare, datele necesare pentru a fi stocate. Datele sunt stocate în locațiile de memorie. Aceste locații de memorie sunt numite variabile. O variabilă membru este o variabilă care este asociată cu un obiect specific. Este accesibil pentru toate metodele sale. Există două tipuri de variabile membre care sunt variabile de clasă și variabile de instanță. diferența cheie între variabilele de clasă și instanță este asta, dacă există o singură copie a variabilei partajate cu toate instanțele clasei, acele variabile se numesc variabile de clasă și dacă fiecare instanță a clasei are o copie proprie a variabilei, atunci acele variabile se numesc variabile de instanță.

CUPRINS

1. Prezentare generală și diferență cheie
2. Ce sunt variabilele de clasă
3. Ce sunt variabilele de instanță
4. Asemănări între variabilele de clasă și de instanță
5. Comparație comparativă comparativă - variabile de clasă vs instanță în formă tabulară
6. rezumat

Ce sunt variabilele de clasă?

Atunci când există o singură copie a variabilei partajate cu toate instanțele clasei, aceste variabile sunt numite variabile de clasă. Variabilele de clasă sunt variabile declarate în cadrul clasei în afara oricărei metode. Aceste variabile conțin cuvântul cheie static. Aceste variabile sunt asociate cu clasa, nu cu obiectul.

Figura 01: Variabile de clasă și variabile de instanță

Consultați codul de mai jos cu variabile de clasă.

public de clasă Angajat

public static int;

salariu dublu static public;

public class Test

public static void principal (string [] args)

Angajat e1 = angajat nou ();

Angajat e2 = angajat nou ();

Conform programului de mai sus, e1 și e2 sunt obiecte de tip Employee. Ambele vor avea aceeași copie a memoriei. Dacă e1.id = 1 și imprimarea e2.id va da și valoarea 1. Este posibilă tipărirea valorii id și salariului folosind numele clasei Angajat, cum ar fi Employee.id, Employee.salary etc.

Ce sunt variabilele de instanță?

Atunci când fiecare instanță a clasei are o copie proprie a variabilei, atunci acele variabile sunt cunoscute ca variabile de instanță. Consultați programul de mai jos.

public de clasă Angajat

public int;

salariul public dublu;

public class Test

public static void principal (string [] args)

Angajat e1 = angajat nou ();

e1.id = 1;

e1.salary = 20000;

Angajat e2 = angajat nou ();

e2.id = 2;

e2. salariu = 25000;

În programul principal, e1 și e2 sunt trimiteri la obiectele de tip Employee. Este posibil să atribuiți valori pentru id și salariu folosind operatorul punct, cum ar fi e1.id, e1. salariu etc. Id-ul și salariul din clasa angajați sunt cunoscuți ca variabile de instanță. E1 și e2 sunt obiecte separate. Fiecare obiect va avea o copie separată a variabilelor de instanță. E1 va avea id id și salariu separat și e2 va avea un ID separat și salariu. Deci, variabilele de instanță sunt create atunci când obiectul sau instanța este creată.

Care sunt asemănările dintre variabilele de clasă și de instanță?

  • Ambele sunt tipuri de variabile.
  • Ambele variabile sunt în interiorul unei clase, dar în afara oricărei metode.

Care este diferența dintre variabilele de clasă și de instanță?

Variabile de clasă vs variabile de instanță

Variabilele de clasă sunt variabile în care există o singură copie a variabilei partajate cu toate instanțele clasei. Variabilele de instanță sunt variabile atunci când fiecare instanță a clasei are o copie proprie a variabilei.
 Asociere
Variabilele de clasă sunt asociate cu clasa. Variabilele de instanță sunt asociate cu obiecte.
Numarul copiilor
Variabilele de clasă creează o copie pentru toate obiectele. Variabilele instanței creează o copie separată pentru fiecare obiect.
 Cuvinte cheie
Variabilele de clasă ar trebui să aibă cuvântul cheie static. Variabilele de instanță nu necesită un cuvânt cheie special, cum ar fi static.

Rezumat - Clasa versus variabile de instanță

Programarea orientată pe obiecte este o paradigmă majoră de programare. Ajută la modelarea unui software care utilizează obiecte. Obiectele sunt create folosind clase. Crearea obiectelor este, de asemenea, cunoscută ca instanțiere. O clasă oferă un plan pentru a crea un obiect. O variabilă membru este o variabilă care este asociată cu un obiect specific. Este accesibil pentru toate metodele sale. Există două tipuri de variabile membre, cum ar fi variabilele de clasă și variabilele de instanță. Diferența dintre variabilele de clasă și instanță este că, dacă există o singură copie a variabilei partajate cu toate instanțele clasei, acele variabile se numesc variabile de clasă și dacă fiecare instanță a clasei are o copie proprie a variabilei, atunci acele variabile variabilele se numesc variabile de instanță.

Descărcați versiunea PDF a variabilelor clasă vs instanță

Puteți descărca versiunea PDF a acestui articol și îl puteți utiliza în scopuri offline conform notei de citare. Descărcați versiunea PDF aici: Diferența dintre variabilele de clasă și de instanță

Referinţă:

1.tutorialspoint.com. "Obiect și clase Java."  Punctul. Disponibil aici
2. "Variabila de instanță". Wikipedia, Fundația Wikimedia, 16 decembrie 2017. Disponibil aici   
3. "Variabila clasei" Wikipedia, Fundația Wikimedia, 16 decembrie 2017. Disponibil aici