Sobes.tech
Junior

Ce tipuri de date există în contextul JVM?

sobes.tech AI

Răspuns de la AI

În contextul JVM există două tipuri de date: Tipuri primitive (Primitive Types) și Tipuri de referință (Reference Types).

Tipuri primitive:

  • Reprezintă valori de bază (numere, caractere, valori boolean).
  • Dimensiunea și intervalul valorilor acestor tipuri sunt strict definite de specificația JVM.
  • Sunt transmise prin valoare.
  • Sunt stocate în stivă (Stack).

Lista tipurilor primitive:

  • boolean: adevărat sau fals.
  • byte: număr întreg semnat de 8 biți.
  • short: număr întreg semnat de 16 biți.
  • char: caracter Unicode de 16 biți (fără semn).
  • int: număr întreg semnat de 32 biți.
  • long: număr întreg semnat de 64 biți.
  • float: număr în virgulă mobilă de 32 biți cu precizie simplă.
  • double: număr în virgulă mobilă de 64 biți cu precizie dublă.

Tipuri de referință:

  • Reprezintă referințe (adrese) către obiecte în memorie (Heap).
  • Dimensiunea referinței depinde în general de arhitectura JVM (32 sau 64 biți).
  • Sunt transmise prin referință, deși tehnic se transmite o copie a referinței.
  • Sunt stocate în heap.

Tipuri de referință:

  • Clase (Class Types): Instanțe ale claselor personalizate sau ale bibliotecilor (de exemplu, String, Object).
  • Interfețe (Interface Types): Referințe la obiecte care implementează o anumită interfață.
  • Array-uri (Array Types): Obiecte container pentru stocarea colecțiilor ordonate de elemente (atât primitive, cât și referințe).

Exemplu de utilizare:

// Tip primitiv
int primitiveInt = 10;

// Tip de referință (obiect de clasa String)
String referenceString = new String("Hello");

// Tip primitiv în array
int[] primitiveArray = {1, 2, 3};

// Tip de referință în array
String[] referenceArray = {"A", "B"};