Sobes.tech
Junior

Welke datatypes bestaan er in de context van de JVM?

sobes.tech AI

Antwoord van AI

In de context van JVM bestaan twee datatypes: Primitive Types en Reference Types.

Primitive Types:

  • Representeren basiswaarden (getallen, tekens, booleans).
  • De grootte en het bereik van deze types worden strikt bepaald door de JVM-specificatie.
  • Worden per waarde doorgegeven.
  • Worden opgeslagen in de stack.

Lijst van primitive types:

  • boolean: true of false.
  • byte: 8-bit signed geheel getal.
  • short: 16-bit signed geheel getal.
  • char: 16-bit Unicode teken (zonder teken).
  • int: 32-bit signed geheel getal.
  • long: 64-bit signed geheel getal.
  • float: 32-bit enkelprecisie floating-point getal.
  • double: 64-bit dubbele precisie floating-point getal.

Reference Types:

  • Verwijzen naar objecten in het geheugen (Heap).
  • De grootte van de referentie hangt meestal af van de architectuur van de JVM (32-bit of 64-bit).
  • Worden per referentie doorgegeven, hoewel technisch een kopie van de referentie wordt doorgegeven.
  • Worden opgeslagen in de heap.

Verschillende referentietypes:

  • Klassen (Class Types): Instanties van gebruikers- of bibliotheekklassen (bijvoorbeeld String, Object).
  • Interfaces (Interface Types): Verwijzingen naar objecten die een bepaalde interface implementeren.
  • Arrays (Array Types): Containerobjecten voor het opslaan van geordende collecties van elementen (zowel primitieve als referentietypes).

Voorbeeld van gebruik:

// Primitive type
int primitiveInt = 10;

// Referentietype (String-object)
String referenceString = new String("Hello");

// Primitive type in array
int[] primitiveArray = {1, 2, 3};

// Referentietype in array
String[] referenceArray = {"A", "B"};