Sobes.tech
Junior

Koje vrste podataka postoje u kontekstu JVM?

sobes.tech АИ

Одговор од АИ

U kontekstu JVM postoje dve vrste podataka: Primitivni tipovi (Primitive Types) i Referentni tipovi (Reference Types).

Primitivni tipovi:

  • Predstavljaju osnovne vrednosti (brojevi, karakteri, logičke vrednosti).
  • Veličina i opseg vrednosti ovih tipova su strogo definisani specifikacijom JVM-a.
  • Prenose se po vrednosti.
  • Čuvaju se u steku (Stack).

Lista primitivnih tipova:

  • boolean: tačno ili netačno.
  • byte: 8-bitni potpisani celobrojni broj.
  • short: 16-bitni potpisani celobrojni broj.
  • char: 16-bitni Unicode karakter (bez znaka).
  • int: 32-bitni potpisani celobrojni broj.
  • long: 64-bitni potpisani celobrojni broj.
  • float: 32-bitni broj sa jednostranom preciznošću.
  • double: 64-bitni broj sa dvostrukom preciznošću.

Referentni tipovi:

  • Predstavljaju reference (adrese) na objekte u memoriji (Heap).
  • Veličina reference obično zavisi od arhitekture JVM-a (32 ili 64 bita).
  • Prenose se putem reference, iako tehnički se prenosi kopija same reference.
  • Čuvaju se u hrpi (Heap).

Tipovi referenci:

  • Klase (Class Types): Instancije korisničkih ili bibliotečkih klasa (npr. String, Object).
  • Interfejsi (Interface Types): Reference na objekte koji implementiraju određeni interfejs.
  • Nizovi (Array Types): Objekti kontejneri za skladištenje uređenih kolekcija elemenata (kako primitivnih, tako i referentnih tipova).

Primer upotrebe:

// Primitivni tip
int primitiveInt = 10;

// Referentni tip (objekat klase String)
String referenceString = new String("Hello");

// Primitivni tip u nizu
int[] primitiveArray = {1, 2, 3};

// Referentni tip u nizu
String[] referenceArray = {"A", "B"};