Διαφορά μεταξύ υπερφόρτωσης και υπέρβασης στην Java

Βασική διαφορά : Η υπερφόρτωση έχει δύο μεθόδους της ίδιας κλάσης με το ίδιο όνομα και με διαφορετικούς τύπους παραμέτρων, ενώ η υπέρβαση σημαίνει ότι έχουν δύο διαφορετικές μεθόδους στην ίδια κλάση με τους ίδιους τύπους παραμέτρων αλλά με διαφορετικές υλοποιήσεις.

Οι υπερισχύουσες μέθοδοι και οι υπερφορτώσεις είναι δύο έννοιες ή τεχνικές που χρησιμοποιούνται στις γλώσσες προγραμματισμού της Java. Και οι δύο έννοιες επιτρέπουν στον προγραμματιστή να παρέχει διαφορετικές υλοποιήσεις για μεθόδους με το ίδιο όνομα. Αυτό το άρθρο διαφοροποιεί τις δύο έννοιες προγραμματισμού.

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

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

Η μέθοδος overriding, στον αντικειμενοστραφή προγραμματισμό, είναι ένα χαρακτηριστικό που επιτρέπει σε μια υποκατηγορία ή κλάση παιδιού να παρέχει μια συγκεκριμένη εφαρμογή μιας μεθόδου που παρέχεται ήδη από μία από τις υπερκείμενες ή τις μητρικές τάξεις της. Η εφαρμογή στην υποκατηγορία αντικαθιστά ή αντικαθιστά την υλοποίηση στην μητρική τάξη παρέχοντας μια μέθοδο με το ίδιο όνομα, τις ίδιες παραμέτρους ή την ίδια υπογραφή και τον ίδιο τύπο επιστροφής με τη μέθοδο της γονικής κλάσης.

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

Σύγκριση μεταξύ υπερφόρτωσης και υπέρβασης:

Υπερφόρτωση

Υπέρβαση

Ορισμός

Σημαίνει ότι υπάρχουν μέθοδοι της ίδιας κλάσης με το ίδιο όνομα, αλλά κάθε μέθοδος έχει διαφορετικές παραμέτρους ή έχει ίδιες παραμέτρους με διαφορετικούς τύπους και τάξη.

Σημαίνει την ύπαρξη μιας υποκατηγορίας με τις ίδιες μεθόδους με το ίδιο όνομα και ακριβώς τον ίδιο τύπο παραμέτρων και τον ίδιο τύπο επιστροφής με μια κατηγορία super.

Εννοια

Σημαίνει ότι περισσότερες από μία μέθοδοι μοιράζονται το ίδιο όνομα στην ίδια κλάση αλλά έχουν διαφορετική υπογραφή.

Αυτό σημαίνει ότι η μέθοδος της βασικής κλάσης επαναπροσδιορίζεται στην κλάση που παράγεται με την ίδια υπογραφή.

η ΣΥΜΠΕΡΙΦΟΡΑ

Προσθέτει ή επεκτείνει τη συμπεριφορά των μεθόδων.

Αλλάζει την υπάρχουσα συμπεριφορά μιας μεθόδου.

Πολυμορφισμός

Είναι ένας πολυμορφισμός χρόνου σύνταξης.

Είναι ένας πολυμορφισμός χρόνου εκτέλεσης.

Στατική μέθοδος

Η στατική μέθοδος μπορεί να υπερφορτωθεί.

Η στατική μέθοδος δεν μπορεί να αντικατασταθεί.

Δεσμός

Στατικός δεσμός.

Δυναμικός δεσμός.

Κληρονομία

Μπορεί ή δεν μπορεί να απαιτήσει κληρονομικότητα.

Απαιτεί πάντα κληρονομικότητα.

Σχέση

Συσχετίζεται συνήθως με γλώσσες στατικών προγραμμάτων.

Συνήθως συσχετίζεται με προγράμματα με αντικείμενο αντικείμενο.

Υπογραφή

Οι μέθοδοι έχουν διαφορετική υπογραφή.

Οι μέθοδοι πρέπει να έχουν την ίδια υπογραφή.

Ταχύτητα

Είναι ταχύτερη από την υπερισχύει.

Είναι αργή σε σύγκριση με την υπερφόρτωση.

Μαθήματα

Δεν απαιτεί περισσότερες από μία κατηγορίες για υπερφόρτωση.

Απαιτεί τουλάχιστον δύο κατηγορίες για υπερφόρτωση.

Επίπεδο

Οι μέθοδοι μπορούν να έχουν οποιοδήποτε επίπεδο πρόσβασης.

Οι μέθοδοι έχουν ίδιο ή ευρύ επίπεδο πρόσβασης.

Παράδειγμα

Κλάση Προσθήκη

{

int σύνολο (int a, int b)

{

επιστροφή a + b;

}}

int σύνολο (int a)

{

επιστροφή a + 10;

}}

}}

Κατηγορία A // Super Class

{

άκυρη απεικόνιση (int num)

{

print num;

}}

}}

// Η κλάση Β κληρονομεί την κατηγορία Α

Κατηγορία Β // Υποκλάση

{

άκυρη απεικόνιση (int num)

{

print num;

}}

}}

Συνιστάται

Σχετικά Άρθρα

  • δημοφιλείς συγκρίσεις: Διαφορά μεταξύ του Samsung Galaxy S4 Active και του HTC One

    Διαφορά μεταξύ του Samsung Galaxy S4 Active και του HTC One

    Βασική διαφορά: Η Samsung ανακοίνωσε ότι έχει προσθέσει ένα νέο τηλέφωνο στο lineup της που συνδυάζει την ανθεκτικότητα του παλαιότερου Samsung Xcover με τις δυνατότητες και το oomph του νέου Galaxy S4. Το S4 Active είναι σκόνη και αδιάβροχη. Το τηλέφωνο έρχεται με οθόνη αφής TFT Full TFT 5 ιντσών που διαφέρει από την AMOLED που
  • δημοφιλείς συγκρίσεις: Διαφορά μεταξύ Blackberry Q10 και Blackberry Z10

    Διαφορά μεταξύ Blackberry Q10 και Blackberry Z10

    Διαφορά κλειδιού: Το BlackBerry Q10 διαθέτει μια χωρητική οθόνη αφής AMOLED 3, 1 ιντσών που επιτρέπει στους χρήστες να έχουν πρόσβαση στα δεδομένα χρησιμοποιώντας την αφή και ζυγίζει περίπου 139 γραμμάρια. Κάτω από την οθόνη, υπάρχει πλήρες πληκτρολόγιο QWERTY που είναι παρόμοιο με εκείνο που υπάρχει στα παλιά BlackBerry. Η συσκευή τροφοδοτείται από
  • δημοφιλείς συγκρίσεις: Διαφορά μεταξύ εικονικής μνήμης και μνήμης προσωρινής μνήμης

    Διαφορά μεταξύ εικονικής μνήμης και μνήμης προσωρινής μνήμης

    Διαφορά κλειδιού: Η εικονική μνήμη είναι μια αφαίρεση της κύριας μνήμης. Επεκτείνει τη διαθέσιμη μνήμη του υπολογιστή αποθηκεύοντας τα ανενεργά μέρη της μνήμης RAM σε ένα δίσκο. όταν το περιεχόμενο είναι απαραίτητο, το επαναφέρει στη μνήμη RAM. Η μνήμη προσωρινής μνήμης χρησιμοποιείται για την αποθήκευση δεδομένων με συ
  • δημοφιλείς συγκρίσεις: Διαφορά ανάμεσα στο Μαλλιά και τη Μάσκα Μαλλιών

    Διαφορά ανάμεσα στο Μαλλιά και τη Μάσκα Μαλλιών

    Διαφορά κλειδιού: Τα μαλακτικά μαλλιών και η μάσκα μαλλιών είναι προϊόντα περιποίησης μαλλιών. Ένα μαλακτικό μαλλιών χρησιμοποιείται γενικά για την παροχή υγρασίας στα μαλλιά. Κάνουν τα μαλλιά να φαίνονται ομαλά και λαμπερά. Μια μάσκα μαλλιών λειτουργεί με τον ίδιο τρόπο που λειτουργεί και η μάσκα προσώπου. Υπάρχουν πολλο
  • δημοφιλείς συγκρίσεις: Διαφορά μεταξύ ψαριών και καρχαριών

    Διαφορά μεταξύ ψαριών και καρχαριών

    Βασική διαφορά : Οι καρχαρίες είναι ένας τύπος ψαριού. Η διαφορά μεταξύ των καρχαριών και των ψαριών βασίζεται στα οστά, τους σκελετούς και την υφή του δέρματος και τη μορφή του σώματος. Οι καρχαρίες είναι μια αποκλειστική φυλή ψαριών αλμυρού νερού. ανήκουν στην τάξη «Chodreichthyes». Οι καρχαρίες θεωρούνται ως ζωντανά απολιθώματα, εξ
  • δημοφιλείς συγκρίσεις: Διαφορά μεταξύ του Web Hosting και του Email Hosting

    Διαφορά μεταξύ του Web Hosting και του Email Hosting

    Βασική διαφορά: Η φιλοξενία ιστοσελίδων αναφέρεται σε μια υπηρεσία που σχετίζεται με τη φιλοξενία στο Διαδίκτυο. Οι εταιρείες που προσφέρουν αυτήν την υπηρεσία, παρέχουν στους υπολογιστές διακομιστών τους την αποθήκευση των ιστοτόπων. Η φιλοξενία ηλεκτρονικού ταχυδρομείου αναφέρεται σε μια υπηρεσία φιλοξενίας στην οποία οι χρήστες μπορούν να στέλνουν και να αποθηκεύουν μηνύματα ηλεκτρονικού ταχυδρομείου μέσω του Διαδικτύου. Διαχ
  • δημοφιλείς συγκρίσεις: Διαφορά μεταξύ Salsa και Jazz

    Διαφορά μεταξύ Salsa και Jazz

    Βασική διαφορά: Η σάλσα είναι μια κατηγορία στυλιζαρισμένου κουβανικού ρυθμικού χορού με τα στοιχεία της μουσικής ροκ και της ψυχής. Η τζαζ προέρχεται από την αφρικανική αμερικανική γλώσσα. Ο χορός της τζαζ είναι μια μορφή χορού που παρουσιάζει το ατομικό ύφος και την πρωτοτυπία του χορευτή. Η σάλσα είναι μια μορφή χορού που προέρχεται από τον κ
  • δημοφιλείς συγκρίσεις: Διαφορά μεταξύ της Samsung Galaxy Tab 3 10.1 και iPad

    Διαφορά μεταξύ της Samsung Galaxy Tab 3 10.1 και iPad

    Βασική διαφορά: Το Samsung Galaxy Tab 3 10.1 ονομάζεται μετά από την οθόνη 10, 1 ιντσών που προσφέρεται στη συσκευή. Η συσκευή έρχεται με την ίδια ανάλυση με το αντίχειρό της 8 ιντσών, γεγονός που μειώνει την πυκνότητα ppi σε 149 ppi. Η συσκευή θα τροφοδοτείται από επεξεργαστή Atom διπλού πυρήνα 1.6 GHz που παρέχεται από την Intel και θα προσφέρει 1 GB RAM. Τα iPads έχουν μέγεθος οθόν
  • δημοφιλείς συγκρίσεις: Διαφορά μεταξύ Bleach και προσώπου

    Διαφορά μεταξύ Bleach και προσώπου

    Βασική διαφορά: Το λευκαντικό αναφέρεται σε έναν λευκαντικό παράγοντα (γενικά έναν χημικό παράγοντα), ο οποίος χρησιμοποιείται για να ελαφρύνει τον τόνο του δέρματος ή ακόμα και την επιδερμίδα. Συνήθως χρησιμοποιείται για να ελαφρύνει το χρώμα των μαλλιών του προσώπου. Η διαδικασία ονομάζεται λεύκανση. Ωστόσο, το χλωρίνη μπορεί επίσης να χρησιμοποιηθε

Επιλογή Συντάκτη

Διαφορά μεταξύ LG Optimus L7 II Dual και Nexus 4

Βασική διαφορά: Το LG Optimus L7 II Dual είναι ένα τηλέφωνο μεσαίας κατηγορίας από την LG. Το τηλέφωνο είναι διπλό τηλέφωνο SIM. Η συσκευή διαθέτει οθόνη LCD IPS 4, 3 ιντσών, χωρητική οθόνη αφής με ανάλυση 480 x 800 pixel. Λειτουργεί με το Android v 4.1.2 (JellyBean), το οποίο υποστηρίζεται από επεξεργαστή Snapdragon διπλού πυρήνα Qualcomm MSM8225 1.0 GH