Intern
Ποιοι τύποι δεδομένων υπάρχουν στη Java;
sobes.tech AI
Απάντηση από AI
Στη Java, υπάρχουν δύο βασικοί τύποι δεδομένων:
-
Ακέραιοι τύποι δεδομένων (Primitive Data Types): Αποθηκεύουν απλές τιμές. Το μέγεθός τους και το εύρος ορίζονται προκαταβολικά από την JLS (Java Language Specification).
- Λογικός:
boolean(αποθηκεύειtrueήfalse). - Ακέραιοι:
byte(1 byte, από -128 έως 127)short(2 bytes, από -32.768 έως 32.767)int(4 bytes, από -2^31 έως 2^31-1)long(8 bytes, από -2^63 έως 2^63-1)char(2 bytes, αποθηκεύει ένα χαρακτήρα σε κωδικοποίηση Unicode)
- Πλωτοί αριθμοί:
float(4 bytes, απλή ακρίβεια)double(8 bytes, διπλή ακρίβεια)
- Λογικός:
-
Αναφορικοί τύποι δεδομένων (Reference Data Types): Αποθηκεύουν αναφορές (διευθύνσεις) σε αντικείμενα στη μνήμη. Περιλαμβάνουν προκαθορισμένες κλάσεις Java, πίνακες και κλάσεις, διεπαφές και καταχωρητές που δημιουργούνται από τον χρήστη.
- Κλάσεις (
class) - Διεπαφές (
interface) - Enum (
enum) - Πίνακες (
array)
- Κλάσεις (
Παραδείγματα:
// Ακέραιοι τύποι
int count = 10;
boolean isValid = true;
char initial = 'J';
double price = 99.99;
// Αναφορικοί τύποι
String name = "Java"; // Το String είναι κλάση
int[] numbers = {1, 2, 3}; // Πίνακας
Object obj = new Object(); // Κλάση Object
Διαφορές:
| Χαρακτηριστικό | Ακέραιοι τύποι | Αναφορικοί τύποι |
|---|---|---|
| Αποθήκευση | Πραγματική τιμή | Αναφορά (διεύθυνση) στο αντικείμενο στη μνήμη |
| Προεπιλεγμένη τιμή | Εξαρτάται από τον τύπο (0, false, '\u0000') | null |
| Μέγεθος | Σταθερό | Εξαρτάται από το αντικείμενο και την πλατφόρμα JVM |
| Εργασία με μνήμη | Συνήθως αποθηκεύονται στη στοίβα (stack) | Τα αντικείμενα αποθηκεύονται στον σωρό, οι αναφορές στη στοίβα |