Sobes.tech
Junior — Middle

Čím se liší pole třídy od lokálních proměnných uvnitř metod v jazyce Java?

sobes.tech AI

Odpověď od AI

Třídy pole (proměnné instance nebo statická pole) a místní proměnné uvnitř metod v Javě se liší podle rozsahu, doby života a místa uložení:

  • Třídy pole:

    • Deklarují se uvnitř třídy, ale mimo metody.
    • Ukládají se v objektu (pokud nejsou statická) nebo v oblasti třídy (pokud jsou statická).
    • Uchovávají hodnotu mezi voláními metod.
    • Jsou dostupná z různých metod třídy (v závislosti na úrovni přístupu).
  • Místní proměnné:

    • Deklarují se uvnitř metody.
    • Existují pouze během provádění metody.
    • Ukládají se na zásobník volání.
    • Není k nim přístup mimo metodu, ve které jsou deklarovány.

Příklad:

public class Example {
    int field = 10; // třída pole

    public void method() {
        int localVar = 5; // místní proměnná
        System.out.println(field + localVar);
    }
}

Zde field uchovává stav objektu, zatímco localVar existuje pouze během provádění metody method.