Sobes.tech
Junior — Middle

Ποια είναι η διαφορά μεταξύ των primitive τύπων δεδομένων και των αναφορικών τύπων στη γλώσσα Java;

sobes.tech AI

Απάντηση από AI

Στην Java, οι πρωταρχικοί τύποι δεδομένων (π.χ., int, boolean, double) αποθηκεύουν άμεσα τις τιμές και καταλαμβάνουν σταθερό μέγεθος μνήμης. Δεν είναι αντικείμενα και δεν έχουν μεθόδους.

Οι τύποι αναφοράς (π.χ., αντικείμενα κλάσεων, πίνακες) αποθηκεύουν αναφορές (δείκτες) στη μνήμη όπου βρίσκονται τα δεδομένα του αντικειμένου. Μπορούν να έχουν μεθόδους και ιδιότητες.

Παράδειγμα:

int a = 5; // πρωταρχικός τύπος
String s = "hello"; // τύπος αναφοράς

Όταν περνάμε πρωταρχικούς τύπους σε μεθόδους, αντιγράφεται η τιμή, και όταν περνάμε τύπους αναφοράς, αντιγράφεται η αναφορά στο αντικείμενο.