Sobes.tech
Junior — Middle

Μπορείς να απαριθμήσεις τους τύπους συνδέσεων που χρησιμοποιούνται στη JVM και να εξηγήσεις τα χαρακτηριστικά τους;

sobes.tech AI

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

Στην JVM χρησιμοποιούνται οι ακόλουθοι τύποι αναφορών, που επηρεάζουν τη συλλογή απορριμμάτων και τον χρόνο ζωής των αντικειμένων:

  • Ισχυρή Αναφορά (Strong Reference) — μια κανονική αναφορά σε ένα αντικείμενο. Όσο υπάρχει ισχυρή αναφορά, το αντικείμενο δεν θα διαγραφεί από τον συλλέκτη απορριμμάτων.

  • Μαλακή Αναφορά (Soft Reference) — το αντικείμενο είναι προσβάσιμο μέσω μιας μαλακής αναφοράς, και ο συλλέκτης απορριμμάτων θα το διαγράψει μόνο σε περίπτωση έλλειψης μνήμης. Χρησιμοποιείται για προσωρινή αποθήκευση.

  • Αδύναμη Αναφορά (Weak Reference) — το αντικείμενο μπορεί να διαγραφεί από τον συλλέκτη απορριμμάτων στην επόμενη διέλευση, ακόμα και αν υπάρχουν αδύναμες αναφορές. Χρησιμοποιείται για αναφορές που δεν πρέπει να εμποδίζουν τη συλλογή απορριμμάτων.

  • Φανταστική Αναφορά (Phantom Reference) — χρησιμοποιείται για την παρακολούθηση της στιγμής που ένα αντικείμενο είναι έτοιμο για διαγραφή, αλλά ακόμα δεν έχει διαγραφεί. Επιτρέπει την εκτέλεση πρόσθετων ενεργειών μετά τη διαγραφή του αντικειμένου.