Junior
Co jsou to instance proměnné?
sobes.tech AI
Odpověď od AI
Instanceové proměnné jsou proměnné, které patří konkrétnímu výtisku (objektu) třídy. Každému objektu je vytvořena jeho vlastní kopie těchto proměnných.
- Definují se uvnitř třídy, ale mimo metody.
- Jsou dostupné z kterékoliv metody téže třídy.
- Jejich hodnota je jedinečná pro každý výtisk objektu.
- Jsou inicializovány při vytváření výtisku třídy (například v konstruktoru).
Příklad v Java:
public class Dog {
String name; // instance proměnná
public Dog(String name) {
this.name = name;
}
public void printName() {
System.out.println("Mé jméno je " + this.name);
}
}
// Vytváření výtisků
Dog dog1 = new Dog("Buddy");
Dog dog2 = new Dog("Lucy");
// Každý výtisk má své vlastní 'name'
dog1.printName(); // Výstup: Mé jméno je Buddy
dog2.printName(); // Výstup: Mé jméno je Lucy
Porovnávací tabulka:
| Proměnná | Příslušnost | Rozsah viditelnosti | Životní cyklus | Inicializace |
|---|---|---|---|---|
| Instanční | Pro každý výtisk objektu | Uvnitř výtisku | Dokud výtisk existuje | Při vytváření výtisku (konstruktor) |
| Statická (třídní) | Pro celou třídu (jedna pro všechny) | V celé třídě (často public) | Do konce běhu programu | Při načtení třídy |
| Lokální | Pro metodu nebo blok kódu | Uvnitř metody/bloku, kde je deklarována | Pouze během běhu metody/bloku | Musí být inicializována před použitím |