Sobes.tech
Junior — Middle

Aké vlastnosti odlišujú referenčné typy od primitívnych v programovacích jazykoch?

sobes.tech AI

Odpoveď od AI

Typy údajov odkazov v programovacích jazykoch (napríklad objekty v Jave) sa líšia od primitívnych typov tým, že:

  • Typy odkazov ukladajú v premennej nie hodnotu samotnú, ale odkaz (ukazovateľ) na oblasť pamäte, kde je uložený objekt.
  • Priradenie typu odkazov kopíruje odkaz, nie samotný objekt, takže niekoľko premenných môže odkazovať na ten istý objekt.
  • Zmeny vykonané cez jeden odkaz sa prejavia na všetkých ostatných, ktoré odkazujú na ten istý objekt.
  • Primitívne typy (int, boolean, char atď.) priamo ukladajú hodnoty do premennej.

Napríklad:

String a = "hello";
String b = a; // b odkazuje na ten istý objekt "hello"

Nie je možné zmeniť reťazec, ale ak by to bol zmeniteľný objekt, zmeny cez b by boli viditeľné aj cez a.