Sobes.tech
Junior — Middle

Milyen jellemzők különböztetik meg a referencia típusokat a primitív típusoktól a programozási nyelvekben?

sobes.tech MI

Válasz az MI-től

A programozási nyelvekben a referencia típusú adatok (pl. Java objektumok) különböznek az alapvető típusoktól abban, hogy:

  • A referencia típusok a változóban nem az értéket, hanem egy hivatkozást (mutatót) tárolnak arra a memóriaterületre, ahol az objektum található.
  • Egy referencia típusú hozzárendelés másolja a hivatkozást, nem az objektumot, így több változó is ugyanarra az objektumra hivatkozhat.
  • Egy hivatkozáson keresztül végzett módosítások minden más hivatkozásban is megjelennek, amelyek ugyanarra az objektumra mutatnak.
  • Az alapvető típusok (int, boolean, char stb.) közvetlenül a változóban tárolják az értékeket.

Például:

String a = "hello";
String b = a; // b ugyanarra az "hello" objektumra mutat

A szöveg nem módosítható, de ha módosítható objektum lenne, a módosítások b-n keresztül is láthatók lennének a-nál.