Junior — Middle
Πού τοποθετούνται οι βασικοί τύποι δεδομένων στη μνήμη σε ένα πρόγραμμα;
sobes.tech AI
Απάντηση από AI
Στη Java, οι βασικοί (πρωταρχικοί) τύποι δεδομένων τοποθετούνται στην στοίβα κλήσεων (stack) εάν είναι τοπικές μεταβλητές ή παράμετροι μεθόδων. Αυτό συμβαίνει επειδή οι primitivi αποθηκεύονται άμεσα στη μνήμη που έχει εκχωρηθεί στη μεταβλητή.
Εάν οι primitivi είναι πεδία ενός αντικειμένου, τοποθετούνται στη heap μαζί με το ίδιο το αντικείμενο.
Παράδειγμα:
void method() {
int a = 10; // 'a' αποθηκεύεται στη στοίβα
MyObject obj = new MyObject(); // 'obj' είναι μια αναφορά στη στοίβα
obj.value = 20; // πεδίο 'value' στη heap μαζί με το αντικείμενο
}
Έτσι, οι primitivi των τοπικών μεταβλητών βρίσκονται στη στοίβα, και τα πεδία των αντικειμένων στη heap.