Sobes.tech
Junior

Kādi datu tipi pastāv JVM kontekstā?

sobes.tech AI

Atbilde no AI

JVM kontekstā pastāv divu veidu dati: primitivie tipi (Primitive Types) un atsauces tipi (Reference Types).

Primitīvie tipi:

  • Apzīmē pamatvērtības (skaitļus, simbolus, loģiskās vērtības).
  • Šo tipu izmērs un vērtību diapazons ir stingri noteikts JVM specifikācijā.
  • Tiek nodoti pēc vērtības (value passing).
  • Glabājas stekā (Stack).

Primitīvo tipu saraksts:

  • boolean: true vai false.
  • byte: 8 bitu zīmju skaitlis.
  • short: 16 bitu zīmju skaitlis.
  • char: 16 bitu Unicode simbols (bez zīmes).
  • int: 32 bitu zīmju skaitlis.
  • long: 64 bitu zīmju skaitlis.
  • float: 32 bitu skaitlis ar peldošo komatu vienkāršā precizitātē.
  • double: 64 bitu skaitlis ar peldošo komatu dubultā precizitātē.

Atsauces tipi:

  • Apzīmē atsauces (adresus) uz objektiem atmiņā (Heap).
  • Atsauces lielums parasti ir atkarīgs no JVM arhitektūras (32-bit vai 64-bit).
  • Tiek nodoti pēc atsauces (reference passing), lai gan tehniski tiek nodota atsauces kopija.
  • Glabājas kaudzē (Heap).

Atsauces tipu veidi:

  • Klases (Class Types): lietotāju vai bibliotēku klases eksemplāri (piemēram, String, Object).
  • Saskarnes (Interface Types): atsauces uz objektiem, kas realizē noteiktu saskarni.
  • Masīvi (Array Types): konteineru objekti, kas glabā sakārtotas elementu kolekcijas (gan primitivus, gan atsauces tipus).

Piemērs lietošanai:

// Primitīvs tips
int primitiveInt = 10;

// Atsauces tips (klases String objekts)
String referenceString = new String("Hello");

// Primitīvs tips masīvā
int[] primitiveArray = {1, 2, 3};

// Atsauces tips masīvā
String[] referenceArray = {"A", "B"};