2014. szeptember 21., vasárnap

Java programozási nyelv - adattípusok és változók

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