Sobes.tech
Intern

Care este diferența dintre un câmp și o variabilă în Java?

sobes.tech AI

Răspuns de la AI

Un câmp este o variabilă declarată în interiorul unei clase, dar în afara oricărui metod. Câmpurile definesc proprietățile obiectului clasei.

O variabilă este orice locație în memorie rezervată pentru stocarea datelor unui anumit tip. Variabilele pot fi:

  • Câmpuri (field): declarate la nivel de clasă.
  • Variabile locale (local variable): declarate în interiorul unei metode, constructor sau bloc.
  • Parametri ai metodei (method parameter): declarați în semnătura metodei.

Diferența principală: domeniu și durata de viață. Câmpurile aparțin obiectului (pentru cele non-statice) sau clasei (pentru cele statice) și există pe durata întregului ciclu de viață. Variabilele locale și parametrii metodei există doar în interiorul blocului în care sunt declarați și sunt distruse după ieșirea din acesta.

Exemplu:

class Example {
    int instanceField; // Câmp de instanță

    static String staticField; // Câmp static

    void myMethod(int parameter) { // parametru al metodei
        int localVar = 10; // variabilă locală
        this.instanceField = parameter;
        System.out.println(staticField + " " + localVar);
    }
}