Διαφορά μεταξύ πρώιμου και όψιμου δέσιμου

Πίνακας περιεχομένων:

Διαφορά μεταξύ πρώιμου και όψιμου δέσιμου
Διαφορά μεταξύ πρώιμου και όψιμου δέσιμου

Βίντεο: Διαφορά μεταξύ πρώιμου και όψιμου δέσιμου

Βίντεο: Διαφορά μεταξύ πρώιμου και όψιμου δέσιμου
Βίντεο: Έχει θέση το PET-CT στον πρώιμο και μεταστατικό καρκίνο του μαστού - Φ. Βλάχου 2024, Ιούνιος
Anonim

Βασική διαφορά – Πρόωρη έναντι καθυστερημένης δέσμευσης

Πρώιμη δέσμευση και όψιμο δέσιμο είναι δύο έννοιες που σχετίζονται με τον πολυμορφισμό. Το Early Binding εμφανίζεται κατά το χρόνο μεταγλώττισης ενώ το Late Binding εμφανίζεται κατά το χρόνο εκτέλεσης. Η βασική διαφορά μεταξύ του Early και του Late Binding είναι ότι το Early Binding χρησιμοποιεί τις πληροφορίες κλάσης για την επίλυση της κλήσης μεθόδου ενώ το Late Binding χρησιμοποιεί το αντικείμενο για την επίλυση της κλήσης μεθόδου.

Γλώσσες προγραμματισμού όπως η Java υποστηρίζουν αντικειμενοστραφή προγραμματισμό (OOP). Είναι ένα παράδειγμα που επιτρέπει την κατασκευή του προγράμματος ή του λογισμικού χρησιμοποιώντας αντικείμενα. Υπάρχουν πολλά αντικείμενα στο λογισμικό. Αυτά τα αντικείμενα συνδέονται μεταξύ τους και περνούν μηνύματα χρησιμοποιώντας μεθόδους. Κάθε αντικείμενο έχει χαρακτηριστικά και συμπεριφορές. Τα χαρακτηριστικά περιγράφονται από τις ιδιότητες ή τις ιδιότητες. Οι συμπεριφορές περιγράφονται χρησιμοποιώντας μεθόδους. Το αντικείμενο Μαθητής μπορεί να έχει χαρακτηριστικά όπως όνομα, ηλικία και αντιπροσωπεύονται από ιδιότητες. Το αντικείμενο Μαθητής μπορεί να έχει συμπεριφορές όπως μελέτη και ανάγνωση, και αναπαρίστανται με μεθόδους. Ένας σημαντικός πυλώνας του OOP είναι ο Πολυμορφισμός. Επιτρέπει σε ένα αντικείμενο να συμπεριφέρεται με πολλούς τρόπους. Το Early Binding και το Late Binding είναι δύο έννοιες στον Πολυμορφισμό. Οι μέθοδοι υπερφόρτωσης συγκολλούνται χρησιμοποιώντας πρώιμη δέσμευση. Οι μέθοδοι που παρακάμπτονται συνδέονται με όψιμο δέσιμο.

Τι είναι το Early Binding;

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

Διαφορά μεταξύ πρώιμου και όψιμου δέσιμου
Διαφορά μεταξύ πρώιμου και όψιμου δέσιμου

Εικόνα 01: Κατηγορία υπολογισμού

Διαφορά μεταξύ πρώιμης και όψιμης βιβλιοδεσίας_Εικόνα 02
Διαφορά μεταξύ πρώιμης και όψιμης βιβλιοδεσίας_Εικόνα 02

Εικόνα 02: Κύριο πρόγραμμα για πρώιμη δέσμευση

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

Τι είναι το Late Binding;

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

Διαφορά μεταξύ πρώιμης και όψιμης βιβλιοδεσίας_Εικόνα 03
Διαφορά μεταξύ πρώιμης και όψιμης βιβλιοδεσίας_Εικόνα 03

Εικόνα 03: Κατηγορία σχήματος

Διαφορά μεταξύ πρώιμης και όψιμης βιβλιοδεσίας_Εικόνα 04
Διαφορά μεταξύ πρώιμης και όψιμης βιβλιοδεσίας_Εικόνα 04

Εικόνα 04: Τάξη κύκλου

Διαφορά μεταξύ πρώιμης και όψιμης βιβλιοδεσίας_Εικόνα 05
Διαφορά μεταξύ πρώιμης και όψιμης βιβλιοδεσίας_Εικόνα 05

Εικόνα 05: Τάξη τριγώνου

Βασική διαφορά μεταξύ πρώιμου και όψιμου δέσιμου
Βασική διαφορά μεταξύ πρώιμου και όψιμου δέσιμου

Εικόνα 06: Κύριο πρόγραμμα για Late Binding

Σύμφωνα με το παραπάνω πρόγραμμα, η κλάση Shape έχει μέθοδο κλήρωσης. Η κλάση Circle και η κλάση Triangle επεκτείνουν την κλάση Shape. Επομένως, αυτές οι δύο κλάσεις μπορούν να κληρονομήσουν τα χαρακτηριστικά και τις μεθόδους της κλάσης Shape. Το Shape Class είναι η βασική κλάση. Οι κλάσεις Circle και Triangle είναι παράγωγες κλάσεις. Η κλάση Circle και η κλάση Triangle έχουν επίσης τη μέθοδο draw με τις δικές τους υλοποιήσεις. Έτσι, η μέθοδος draw στην κλάση Shape παρακάμπτεται από τις μεθόδους σχεδίασης των παραγόμενων κλάσεων.

Στο κύριο πρόγραμμα, δημιουργείται μια μεταβλητή αναφοράς s τύπου Shape. Κατά το χρόνο μεταγλώττισης, ο μεταγλωττιστής θα παραπέμπει μόνο στη μέθοδο σχεδίασης της βασικής κλάσης. Κατά το χρόνο εκτέλεσης, θα εκτελεστούν διαφορετικές μέθοδοι κλήρωσης. Πρώτα, το s θα δείχνει το αντικείμενο του τύπου Shape. Έτσι, καλείται η μέθοδος draw της κλάσης Shape. Στη συνέχεια, το s θα δείχνει στο αντικείμενο του τύπου Circle και θα επικαλεστεί τη μέθοδο draw της κλάσης Circle. Τέλος, το s θα δείχνει το αντικείμενο του τύπου Triangle και θα καλέσει τη μέθοδο draw στην κλάση Triangle. Οι μέθοδοι καλούνται ανάλογα με τα αντικείμενα. Επομένως, το αντικείμενο χρησιμοποιείται για την επίλυση μεθόδου που καλεί σε Late Binding. Οι πληροφορίες που απαιτούνται για το δέσιμο παρέχονται κατά το χρόνο εκτέλεσης, επομένως η ταχύτητα εκτέλεσης είναι πιο αργή σε σύγκριση με το πρώιμο δέσιμο.

Ποια είναι η ομοιότητα μεταξύ της πρώιμης και της όψιμης δέσεως;

Τόσο το Early Binding όσο και το Late Binding σχετίζονται με τον πολυμορφισμό που αποτελεί πυλώνα του OOP

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

Πρώιμη δέσμευση έναντι καθυστερημένης δέσεως

Η διαδικασία χρήσης των πληροφοριών κλάσης για την επίλυση της κλήσης μεθόδου που λαμβάνει χώρα κατά το χρόνο μεταγλώττισης ονομάζεται Πρόωρη Σύνδεση. Η διαδικασία χρήσης του αντικειμένου για την επίλυση της κλήσης μεθόδου που πραγματοποιείται κατά το χρόνο εκτέλεσης ονομάζεται Late Binding.
Χρόνος Δεσίματος
Η πρώιμη δέσμευση πραγματοποιείται κατά το χρόνο μεταγλώττισης. Η καθυστερημένη δέσμευση γίνεται κατά το χρόνο εκτέλεσης.
Λειτουργικότητα
Πρώιμη δέσμευση χρησιμοποιεί τις πληροφορίες κλάσης για την επίλυση της κλήσης μεθόδου. Late Binding χρησιμοποιεί το αντικείμενο για την επίλυση της κλήσης μεθόδου.
Συνώνυμα
Η πρώιμη δέσμευση είναι επίσης γνωστή ως στατική δέσμευση.. Το όψιμο δέσιμο είναι επίσης γνωστό ως δυναμικό δέσιμο.
Συμβάντο
Οι μέθοδοι υπερφόρτωσης συνδέονται με χρήση πρώιμης δέσμευσης. Οι μέθοδοι που παρακάμπτονται συνδέονται με όψιμο δέσιμο.
Ταχύτητα εκτέλεσης
Η ταχύτητα εκτέλεσης είναι μεγαλύτερη σε πρώιμο δέσιμο. Η ταχύτητα εκτέλεσης είναι χαμηλότερη στο όψιμο δέσιμο.

Summary – Early vs Late Binding

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

Συνιστάται: