Sobes.tech
Junior

Čo sú inštančné premenné?

sobes.tech AI

Odpoveď od AI

Premenné inštancie (instance variables) sú premenné, ktoré patria ku konkrétnemu výtlačku (objektu) triedy. Pre každý objekt sa vytvorí jeho vlastná kópia týchto premenných.

  • Definujú sa vnútri triedy, ale mimo metód.
  • Sú dostupné z ktorejkoľvek metódy tej istej triedy.
  • Ich hodnota je jedinečná pre každý výtlačok objektu.
  • Sú inicializované pri vytvorení výtlačku triedy (napríklad v konštruktore).

Príklad v Jave:

public class Dog {
    String name; // premenná inštancie

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

    public void printName() {
        System.out.println("Môj názov je " + this.name);
    }
}

// Vytváranie výtlačkov
Dog dog1 = new Dog("Buddy");
Dog dog2 = new Dog("Lucy");

// Každý výtlačok má svoj 'name'
dog1.printName(); // Výstup: Môj názov je Buddy
dog2.printName(); // Výstup: Môj názov je Lucy

Porovnávacia tabuľka:

Premenná Príslušnosť Rozsah viditeľnosti Životný cyklus Inicializácia
Inštančná Pre každý výtlačok objektu Vo vnútri výtlačku Tak dlho, ako výtlačok existuje Pri vytvorení výtlačku (konštruktor)
Statická (triedna) Pre celú triedu (jedna pre všetkých) V celej triede (často public) Do konca behu programu Pri načítaní triedy
Lokálna Pre metódu alebo blok kódu Vo vnútri metódy/bloku, kde je deklarovaná Iba počas behu metódy/bloku Musí byť inicializovaná pred použitím