Sobes.tech
Junior

Ce sunt variabilele de instanță?

sobes.tech AI

Răspuns de la AI

Variabilele de instanță sunt variabile care aparțin unei instanțe specifice (obiect) a unei clase. Fiecare obiect are o copie proprie a acestor variabile.

  • Sunt definite în interiorul clasei, dar în afara metodelor.
  • Sunt accesibile din orice metodă a aceleiași clase.
  • Valoarea lor este unică pentru fiecare instanță a obiectului.
  • Sunt inițializate la crearea instanței clasei (de exemplu, în constructor).

Exemplu în Java:

public class Dog {
    String name; // variabilă de instanță

    public Dog(String name) {
        this.name = name;
    }

    public void printName() {
        System.out.println("Numele meu este " + this.name);
    }
}

// Crearea de instanțe
Dog dog1 = new Dog("Buddy");
Dog dog2 = new Dog("Lucy");

// Fiecare instanță are propriul 'name'
dog1.printName(); // Afișează: Numele meu este Buddy
dog2.printName(); // Afișează: Numele meu este Lucy

Tabel comparativ:

Variabilă Aparține Domeniu de vizibilitate Ciclul de viață Inițializare
De instanță Pentru fiecare instanță a obiectului În interiorul instanței Atât timp cât instanța există La crearea instanței (constructor)
Statică (de clasă) Pentru întreaga clasă (una pentru toți) În întreaga clasă (adesea public) Până la finalul execuției programului La încărcarea clasei
Local Pentru o metodă sau bloc de cod În interiorul metodei/blocului unde este declarat Doar în timpul execuției metodei/blocului Trebuie să fie inițializată înainte de utilizare