Βίντεο: Χρήση της απόλυτης αναφοράς σε τύπο 2024
Ένας τύπος αναφοράς είναι ένας τύπος δεδομένων που βασίζεται σε μια κλάση και όχι σε έναν από τους πρωτόγονους τύπους που είναι ενσωματωμένοι στη γλώσσα Java. Η τάξη μπορεί να είναι μια τάξη που παρέχεται ως μέρος της βιβλιοθήκης τάξης Java API ή μιας κλάσης που γράφετε τον εαυτό σας.
Ούτως ή άλλως, όταν δημιουργείτε ένα αντικείμενο από μια κλάση, η Java κατανέμει την ποσότητα μνήμης που απαιτεί το αντικείμενο για την αποθήκευση του αντικειμένου. Στη συνέχεια, αν ορίσετε το αντικείμενο σε μια μεταβλητή, η μεταβλητή έχει στην πραγματικότητα εκχωρηθεί αναφορά στο αντικείμενο, όχι το ίδιο το αντικείμενο. Αυτή η αναφορά είναι η διεύθυνση της θέσης μνήμης όπου αποθηκεύεται το αντικείμενο.
Για να δηλώσετε μια μεταβλητή χρησιμοποιώντας έναν τύπο αναφοράς, απλά ονομάζετε το όνομα της κλάσης ως τον τύπο δεδομένων. Για παράδειγμα, η ακόλουθη πρόταση ορίζει μια μεταβλητή που μπορεί να αναφέρει αντικείμενα που δημιουργήθηκαν από μια κλάση που ονομάζεται Ball:
Ball b;
Πρέπει να δώσετε μια δήλωση εισαγωγής για να πείτε στην Java πού θα βρείτε την τάξη.
Για να δημιουργήσετε μια νέα παρουσία ενός αντικειμένου από μια κλάση, χρησιμοποιείτε τη νέα λέξη-κλειδί μαζί με το όνομα κλάσης:
Μπάλα b = νέα Μπάλα ();
Μια από τις βασικές έννοιες στην εργασία με τους τύπους αναφοράς είναι το γεγονός ότι μια μεταβλητή συγκεκριμένου τύπου δεν περιέχει πράγματι ένα αντικείμενο αυτού του τύπου. Αντίθετα, περιέχει μια αναφορά σε ένα αντικείμενο του σωστού τύπου. Μια σημαντική παρενέργεια είναι ότι δύο μεταβλητές μπορούν να αναφέρονται στο ίδιο αντικείμενο.
Εξετάστε αυτές τις δηλώσεις:
Ball b1 = new Ball (); Μπάλα b2 = b1.
Εδώ, τόσο το b1 όσο και το b2 αναφέρονται στην ίδια περίπτωση της κλάσης Ball.