java:variables

Μεταβλητές στην γλώσσα Προγραμματισμού Java

Οι μεταβλητές στην γλώσσα προγραμματισμού Java διακρίνονται σε δύο βασικές κατηγορίες:

  • βασικοί τύποι (primitive data types): Ως βασικοί τύποι δεδομένων ορίζονται οι τύποι δεδομένων οι οποίοι καταλαμβάνουν προκαθορισμένο αριθμό bytes στην μνήμη και είναι προκαθορισμένοι από τον compiler της γλώσσας. Κοινοί τύποι είναι byte, char, int(integer), long, float, double κλπ. Ανάλογοι τύποι δεδομένων απαντώνται και σε άλλες γλώσσες προγραμματισμού, όπως οι γλώσσες C/C++.
  • αναφορικοί τύποι (reference types): Σε αυτή την κατηγορία ανήκουν όλοι οι τύποι δεδομένων οι οποίοι ορίζονται μέσα από μία κλάση και υλοποιούνται με χρήση αντικειμένων. Ο λόγος που καλούνται αναφορικοί τύποι είναι ότι οι μεταβλητή κάθε αντικειμένου στην Java δεν περιέχει το αντικείμενο καθ' αυτό, αλλά ένα δείκτη (αναφορά-reference) στο αντικείμενο. Το αντικείμενο βρίσκεται σε μία διαφορετική περιοχή της μνήμης, όπου δεσμεύεται η απαραίτητη μνήμη από τον κατασκευαστή του αντικειμένου κατά την αρχικοποίηση του και αποδεσμεύεται η μνήμη από τον μηχανισμό Garbage Collection κατά την καταστροφή του.

Κάθε κλάση στην Java απεικονίζει ένα διαφορετικό τύπο δεδομένων. Μπορούμε να έχουμε τόσους τύπους δεδομένων, όσα και οι διαφορετικές πιθανές κλάσεις στην Java. Επομένως, ο αριθμός των δυνατών τύπων δεδομένων στην Java είναι άπειρος.

Βασικοί Τύποι Δεδομένων

Οι βασικοί τύποι δεδομένων στην Java σε αναλογία με την γλώσσα προγραμματισμού C είναι οι εξής:

τύπος δεδομένων byte short int long float double boolean char
αριθμός bits 8 16 32 64 32-bit IEEE 754 floating point 64-bit IEEE 754 floating point not-applicable* 16
αριθμός bytes 1 2 4 8 4 8 not-applicable* 2
εύρος τιμών -128 έως 127 -32.768 έως 32.767 -231 έως 231-1 -263 έως 263 μόνο δύο τιμές true και false 16bit Unicode characters

* Ο τύπος boolean λαμβάνει μόνο δύο τιμές. Ο αριθμός των bytes που καταλαμβάνονται δεν ορίζεται και πιθανόν διαφέρει από υλοποίηση σε υλοποίηση JVM.

Εκτός από τους παραπάνω βασικούς τύπους δεδομένων η Java παρέχει ειδική υποστήριξη για αλφαριθμητικά (strings) μέσω της κλάσης java.lang.String.

Προεπιλεγμένες τιμές μεταβλητών

Εάν οι τιμές των παραπάνω βασικών τύπων δεδομένων δεν αρχικοποιηθούν, την αρχικοποίηση τους αναλαμβάνει ο compiler. Οι προεπιλεγμένες τιμές που θέτει ο compiler δίνονται παρακάτω:

Data Type Default Value (for fields)
byte 0
short 0
int 0
long 0L
float 0.0f
double 0.0d
char '\u0000'
String (or any object) null
boolean false
java/variables.txt · Last modified: 2017/02/11 12:56 by doufexi