Sobes.tech
Junior — Middle

Unde sunt plasate tipurile de date de bază în memorie într-un program?

sobes.tech AI

Răspuns de la AI

În Java, tipurile de date primitive sunt plasate în stiva de apeluri (stack) dacă sunt variabile locale sau parametri ai metodelor. Acest lucru se datorează faptului că primitivele sunt stocate direct în memoria alocată pentru variabilă.

Dacă primitivele sunt câmpuri ale unui obiect, acestea sunt plasate în heap împreună cu obiectul însuși.

Exemplu:

void method() {
    int a = 10; // 'a' este stocat în stivă
    MyObject obj = new MyObject(); // 'obj' este o referință în stivă
    obj.value = 20; // câmpul 'value' în heap împreună cu obiectul
}

Prin urmare, primitivele variabilelor locale sunt în stivă, iar câmpurile obiectelor în heap.