A Java adattípusai a következők:
boolean: logikai típus, értéke true vagy false lehet.
char: két bájtos adatként egyetlen unicode karakter tárolására használjuk
byte: egy bájtos előjeles egész (-127 és 128 közti érték)
short: két bájtos előjeles egész (-32735 és 32736 közti érték)
int: négy bájtos előjeles egész
long: nyolc bájtos előjeles egész
float: négy bájton ábrázolt lebegőpontos szám
double: nyolc bájton árbrázolt lebegőpontos szám
Az alaptípusok nem referenciatípusok! Ahhoz hogy referenciával rendelkezzenek (kvázi a C nyelv mutatóinak felel meg) ahhoz úgynevezett csomagoló osztályokat kell alkalmaznunk. Ezzel az elemi típusokat objektumként tudjuk kezelni és ahol referenciatípust vár egy paraméter, ott csomagolóosztályként tudunk értékeket átadni.
A csomagolóosztályok a következők:
Boolean, Character, Integer (ez az összes egész típusra használható), Float és Double.
Ezek az adattípusok gépfüggetlenek, azaz minden JVM adaptáció pontosan ugyan úgy kezeli ezeket, függetlenül az adott hardvertől.
Változók deklarálásakor a C-ben megszokottak szerint járhatunk el.
Például:
int i;
float x,y;
boolean b;
deklarációkor egyből értéket is kaphatnak a változók:
char c='A';
int i=100, j=200;
Az egyes változók alapértékeket kapnak, ha nem adunk értéket a definiáláskor. Ezek a következők:
char -> '\0'
egész típusok -> 0
lebegőpontosok -> 0.0
boolean -> false
A Java objektumok a nyelv legfontosabb elemei. Az objektumokat úgynevezett referenciaváltozókon keresztül érjük el. A referenciaváltozók a C nyelv mutatóihoz hasonlítható, azzal a különbséggel hogy míg a mutatók kezelése teljes mértékben a programozó feladata és felelőssége, addig a referenciák a JVM menedzselése alatt állnak. Közvetlenül meg sem tudható egy objektum referenciájának értéke (azaz a memóriacím ahol megtalálható az objektum). Ez biztonságossá és egyszerűvé teszi a programozást.
Referencia a new operátorral kérhető a példányosítás során:
Car mycar = new Car();
Innentől kezdve a mycar nevű referenciaváltozó automatikusan egy Car típusú objektum egészét jelenti.
A referenciáknak értékül adható a null érték, mely sehová sem mutat. Ezzel elérhetetlenné válik az addig hivatkozott objektum. Az objektumokat a C++ nyelven meg kellett szüntetni ha már nem használtuk, hogy a lefoglalt memória felszabadulhasson. Ezt az úgynevezett destruktor hívással lehetett megtenni. Javában nincs szükség destruktor hívásra. Az objektumokat a JVM kezeli és ha már nincs rá hivatkozás, akkor az úgynevezett Garbage Collector (GC) mechanizmus felelős a memória felszabadításáért.
Nincsenek megjegyzések:
Megjegyzés küldése