Junior
Milyen adattípusok léteznek a JVM kontextusában?
sobes.tech MI
Válasz az MI-től
A JVM kontextusában két adat típus létezik: Alapvető típusok (Primitive Types) és Referencia típusok (Reference Types).
Alapvető típusok:
- Alapvető értékeket képviselnek (számok, karakterek, logikai értékek).
- Ezeknek a típusoknak a mérete és értéktartománya szigorúan meghatározott a JVM specifikáció szerint.
- Érték szerint kerülnek átadásra.
- A veremben (Stack) tárolódnak.
Az alapvető típusok listája:
boolean: igaz vagy hamis.byte: 8 bites előjeles egész szám.short: 16 bites előjeles egész szám.char: 16 bites Unicode karakter (előjel nélkül).int: 32 bites előjeles egész szám.long: 64 bites előjeles egész szám.float: 32 bites egyszeres pontosságú lebegőpontos szám.double: 64 bites dupla pontosságú lebegőpontos szám.
Referencia típusok:
- Hivatkozásokat (címeket) jelentenek a memóriában (Heap) lévő objektumokra.
- A hivatkozás mérete általában a JVM architektúrájától függ (32 vagy 64 bit).
- Hivatkozás szerint történik az átadás, bár technikailag a hivatkozás másolatát adjuk át.
- A heapben tárolódnak.
Referencia típusok:
- Osztályok (Class Types): Felhasználói vagy könyvtári osztálypéldányok (pl.
String,Object). - Interfészek (Interface Types): Olyan objektumokra mutató hivatkozások, amelyek egy adott interfészt valósítanak meg.
- Tömbök (Array Types): Olyan objektumok, amelyek rendezett gyűjteményeket tárolnak (mind primitív, mind referencia típusokat).
Használati példa:
// Alapvető típus
int primitiveInt = 10;
// Referencia típus (String osztály példánya)
String referenceString = new String("Hello");
// Alapvető típus tömbben
int[] primitiveArray = {1, 2, 3};
// Referencia típus tömbben
String[] referenceArray = {"A", "B"};