Διαφορά μεταξύ αντικειμένου και στιγμιότυπου

Anonim

Object vs. Instance

Ο προγραμματισμός αντικειμένων (OOP) είναι ένα από τα πιο δημοφιλή παραδείγματα προγραμματισμού. Στο Π.Ο.Π., η εστίαση είναι στο να σκεφτόμαστε το πρόβλημα που πρέπει να λυθεί με όρους πραγματικών στοιχείων και να αντιπροσωπεύει το πρόβλημα από την άποψη των αντικειμένων και της συμπεριφοράς τους. Πολλές γλώσσες προγραμματισμού που υποστηρίζουν βασικές πτυχές του OOP (που ονομάζονται γλώσσες OOP) έχουν την τάξη ως το κύριο εργαλείο προγραμματισμού. Ονομάζονται κλάσεις. Οι τάξεις είναι μια αφηρημένη αναπαράσταση αντικειμένων πραγματικού κόσμου. Οι κλάσεις έχουν ιδιότητες που ονομάζονται ιδιότητες. Τα χαρακτηριστικά εφαρμόζονται ως μεταβλητές σφαιρικού και στιγμιότυπου. Οι μέθοδοι στις τάξεις αντιπροσωπεύουν ή ορίζουν τη συμπεριφορά αυτών των τάξεων. Οι μέθοδοι και τα χαρακτηριστικά των κλάσεων ονομάζονται μέλη της τάξης. Με πολύ απλούς όρους, μια τάξη είναι ένα σχέδιο ή ένα πρότυπο για ένα συγκεκριμένο αντικείμενο πραγματικής ζωής. Έτσι, ένα αντικείμενο είναι το μπλοκ μνήμης που χρησιμοποιείται για την αποθήκευση των απαραίτητων πληροφοριών σύμφωνα με αυτό το σχέδιο. Το παράδειγμα είναι ένα μπλοκ μνήμης που αναφέρεται σε ένα αντικείμενο.

Τι είναι ένα Αντικείμενο;

Τα αντικείμενα είναι τα αποτελέσματα της εμφάνισης μιας κλάσης. Η διαδικασία είναι η διαδικασία λήψης του σχεδίου και ο καθορισμός κάθε χαρακτηριστικού και συμπεριφοράς έτσι ώστε το προκύπτον αντικείμενο να αντιπροσωπεύει πραγματικά ένα πραγματικό αντικείμενο ζωής. Το αντικείμενο είναι ένα αποκλειστικό και συνεχές μπλοκ μνήμης που διατίθεται για την αποθήκευση πληροφοριών όπως μεταβλητές, μέθοδοι ή λειτουργίες κλπ. Το αντικείμενο δημιουργείται με τη χρήση νέου χειριστή, σε γλώσσα προγραμματισμού Java. Για παράδειγμα, αν υπάρχει κατηγορία που ονομάζεται Αυτοκίνητο, τότε μπορείτε να χρησιμοποιήσετε τα παρακάτω για να δημιουργήσετε ένα αντικείμενο της κλάσης Αυτοκινήτου.

νέο αυτοκίνητο ();

Εδώ δημιουργείται ένα αντικείμενο Car από το νέο χειριστή και επιστρέφει αναφορά σε αντικείμενο. Ο νέος χειριστής μαζί με τον κατασκευαστή της κλάσης Αυτοκινήτου χρησιμοποιείται για τη δημιουργία του νέου αντικειμένου. Η διάρκεια ζωής του αντικειμένου ξεκινάει από την κλήση προς τον κατασκευαστή του έως ότου καταστραφεί. Μόλις ένα αντικείμενο δεν αναφερθεί, θα αφαιρεθεί / καταστραφεί από τον συλλέκτη σκουπιδιών.

Τι είναι ένα περιστατικό;

Το παράδειγμα είναι ένα μπλοκ μνήμης, το οποίο περιέχει την αναφορά σε ένα αντικείμενο. Με άλλα λόγια, το Instance θα διατηρήσει τη διεύθυνση του μπλοκ μνήμης έναρξης όπου αποθηκεύεται το αντικείμενο. Στην πραγματικότητα, το όνομα του στιγμιότυπου μπορεί να χρησιμοποιηθεί για την πρόσβαση στην αρχή της περιοχής μνήμης αντικειμένου. Οι αντισταθμίσεις από την μνήμη εκκίνησης υπολογίζονται από τη μηχανή χρόνου εκτέλεσης ώστε να μπορέσουμε να μεταβούμε όπου αποθηκεύονται τα επιμέρους δεδομένα ή οι αναφορές μεθόδων. Μετά την αποκοπή κώδικα Java μπορεί να χρησιμοποιηθεί για να δημιουργηθεί μια παρουσία ενός αντικειμένου αυτοκινήτου.

Αυτοκίνητο myCar = νέο αυτοκίνητο ();

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

Ποια είναι η διαφορά μεταξύ ενός αντικειμένου και ενός περιστατικού;

Το αντικείμενο είναι ένα συνεχόμενο μπλοκ μνήμης που αποθηκεύει τις πραγματικές πληροφορίες που διακρίνουν αυτό το αντικείμενο από άλλα αντικείμενα, ενώ μια περίπτωση είναι μια αναφορά σε ένα αντικείμενο. Πρόκειται για ένα μπλοκ μνήμης, το οποίο δείχνει την αστεροειδή διεύθυνση όπου αποθηκεύεται το αντικείμενο. Δύο περιπτώσεις ενδέχεται να αφορούν το ίδιο αντικείμενο. Τα χρονικά διαστήματα ενός αντικειμένου και μιας παρουσίας δεν σχετίζονται. Επομένως, μια περίπτωση θα μπορούσε να είναι μηδενική. Αφού αφαιρεθούν όλες οι περιπτώσεις που δείχνουν ένα αντικείμενο, το αντικείμενο θα καταστραφεί.