Μονή κληρονομιά έναντι πολλαπλής κληρονομίας

Συγγραφέας: Laura McKinney
Ημερομηνία Δημιουργίας: 4 Απρίλιος 2021
Ημερομηνία Ενημέρωσης: 13 Ενδέχεται 2024
Anonim
Μονή κληρονομιά έναντι πολλαπλής κληρονομίας - Άλλα
Μονή κληρονομιά έναντι πολλαπλής κληρονομίας - Άλλα

Περιεχόμενο

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


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

Υπάρχει μια απλή παράγωγη κλάση που κληρονομείται από τη βασική τάξη. Υπάρχουν τρεις τρόποι να κληρονομήσετε την τάξη βάσης που είναι δημόσια, προστατευμένη και ιδιωτική. Ο προσδιοριστής πρόσβασης χρησιμοποιείται για να κληρονομήσει την κλάση βάσης. Ο λόγος για μία κληρονομιά είναι να κληρονομήσει τις ιδιότητες και τη συμπεριφορά από μια μόνο γονική τάξη. Ο κύριος σκοπός του αντικειμενοστραφούς προγραμματισμού που είναι η επαναχρησιμοποίηση κώδικα εκπληρώνεται με τη χρήση μιας κληρονομίας. Αν μιλάμε για μία κληρονομιά ως σύγκριση με την πολλαπλή κληρονομιά, απλή κληρονομικότητα πρέπει να είναι πιο εύκολη σε σύγκριση με την πολλαπλή κληρονομιά. Η λειτουργία overriding χρησιμοποιείται σε μία κληρονομιά. Ο πολυμορφισμός χρόνου εκτέλεσης είναι γνωστός ως υπερτιμητικός. Η υπέρβαση επιτυγχάνεται με τη χρήση μιας λέξης-κλειδιού λειτουργίας που είναι εικονική. Αυτή η λέξη-κλειδί χρησιμοποιείται στη βασική κλάση. Όταν η παράγωγη κλάση επαναπροσδιορίζει μια συνάρτηση, δεν είναι δυνατή η αλλαγή της λειτουργίας που έχει αντικατασταθεί. Η υπέρβαση της C ++ καθορίζει ποια έκδοση της συνάρτησης καλείται. Η μονή κληρονομικότητα χρησιμοποιείται σε C ++, Java, PHP, C # και σε οπτική βάση.


Η πολλαπλή κληρονομικότητα επιτρέπει την εξαγωγή περισσότερων από μία κατηγοριών βάσης που σημαίνει ότι μπορείτε να αποκτήσετε τις ιδιότητες περισσότερων από μία κατηγοριών βάσης. Μπορούμε να έχουμε μία παράγωγη κλάση και πολλές κλάσεις βάσης. Η βασική κλάση κληρονομείται με την αναφορά του ξεχωριστού προσδιοριστή πρόσβασης. Η πολλαπλή κληρονομιά έχει συμμετρική συγχώνευση και ασύμμετρη επέκταση. Όταν υπάρχει μοτίβο προσαρμογέα χρησιμοποιείται πολλαπλή κληρονομικότητα. Η πολλαπλή κληρονομιά χρησιμοποιείται σε C ++, Python, Perl, Eiffel, Dylan, Curl, Eulisp, Tcl. Η εφαρμογή του κώδικα για πολλαπλές κληρονομιές είναι πολύπλοκη σε σύγκριση με την κληρονομικότητα.

Περιεχόμενα: Διαφορά μεταξύ ενιαίας κληρονομιάς και πολλαπλής κληρονομιάς

  • Συγκριτικό διάγραμμα
  • Ενιαία κληρονομιά
  • Πολλαπλή κληρονομιά
  • Βασικές διαφορές
  • συμπέρασμα
  • Επεξηγηματικό βίντεο

Συγκριτικό διάγραμμα

ΒάσηΕνιαία κληρονομιάΠολλαπλή κληρονομιά
Εννοια Σε μια κληρονομική κληρονομιά, η παράγωγη κλάση κληρονομεί μόνο μία μοναδική κατηγορία βάσης

Σε πολλαπλές κληρονομιές, η παράγωγη κλάση κληρονομεί περισσότερες από μία βασικές κατηγορίες.


 

ΑσφαλήςΗ ενιαία κληρονομιά είναι ασφαλέστερη από τις πολλαπλές κληρονομιέςΟι πολλαπλές κληρονομιές δεν είναι ασφαλείς στην εφαρμογή
ΠρόσβασηΣε μοναδικά κληρονομικά χαρακτηριστικά κληρονομείται μια μοναδική κλάσηΣε πολλαπλά κληρονομικά χαρακτηριστικά των πολλαπλών τάξεων μπορεί να κληρονομηθεί
Χρόνος εκτέλεσης Η ενιαία κληρονομιά απαιτεί περισσότερο χρόνο εκτέλεσηςΗ πολλαπλή κληρονομιά απαιτεί μικρότερο χρόνο εκτέλεσης

Ενιαία κληρονομιά

Υπάρχει μια απλή παράγωγη κλάση που κληρονομείται από τη βασική τάξη. Υπάρχουν τρεις τρόποι να κληρονομήσετε την τάξη βάσης που είναι δημόσια, προστατευμένη και ιδιωτική. Ο προσδιοριστής πρόσβασης χρησιμοποιείται για να κληρονομήσει την κλάση βάσης. Ο λόγος για μία κληρονομιά είναι να κληρονομήσει τις ιδιότητες και τη συμπεριφορά από μια μόνο γονική τάξη. Ο κύριος σκοπός του αντικειμενοστραφούς προγραμματισμού που είναι η επαναχρησιμοποίηση κώδικα εκπληρώνεται με τη χρήση μιας κληρονομίας. Αν μιλάμε για μία κληρονομιά σε σύγκριση με πολλαπλές κληρονομιές, απλή κληρονομιά είναι πιο εύκολη σε σύγκριση με πολλαπλές κληρονομιές. Η λειτουργία overriding χρησιμοποιείται σε μία κληρονομιά. Ο πολυμορφισμός χρόνου εκτέλεσης είναι γνωστός ως υπερτιμητικός. Η υπέρβαση επιτυγχάνεται με τη χρήση μιας λέξης-κλειδιού λειτουργίας που είναι εικονική. Αυτή η λέξη-κλειδί χρησιμοποιείται στη βασική κλάση. Όταν η παράγωγη κλάση επαναπροσδιορίζει μια συνάρτηση, δεν μπορεί να αλλάξει η υπερτιμημένη συνάρτηση. Η υπέρβαση της C ++ καθορίζει ποια έκδοση της συνάρτησης καλείται. Η μονή κληρονομικότητα χρησιμοποιείται σε C ++, Java, PHP, C # και σε οπτική βάση.

Πολλαπλή κληρονομιά

Πολλαπλές κληρονομιές επιτρέπουν την απόκτηση περισσότερων από μία κλάσεων βάσης σημαίνει ότι μπορείτε να πάρετε τις ιδιότητες πολλών κατηγοριών βάσης. Μπορούμε να έχουμε μία παράγωγη κλάση και πολλές κλάσεις βάσης. Η βασική κλάση κληρονομείται με την αναφορά του ξεχωριστού προσδιοριστή πρόσβασης. Οι πολλαπλές κληρονομιές έχουν συμμετρική συγχώνευση και ασύμμετρη επέκταση. Όταν υπάρχει ένα μοτίβο προσαρμογέα, χρησιμοποιούνται πολλαπλές κληρονομιές. Πολλαπλές κληρονομιές χρησιμοποιούνται σε C ++, Python, Perl, Eiffel, Dylan, Curl, Eulisp, Tcl. Η εφαρμογή του κώδικα για πολλαπλές κληρονομιές είναι πολύπλοκη σε σύγκριση με την κληρονομικότητα.

Βασικές διαφορές

  1. Σε μια κληρονομική κληρονομιά, η παράγωγη κλάση κληρονομεί μόνο μία βασική τάξη, ενώ, σε πολλαπλές κληρονομιές, η παράγωγη τάξη κληρονομεί περισσότερες από μία τάξεις βάσης.
  2. Η ενιαία κληρονομιά είναι ασφαλέστερη από την πολλαπλή κληρονομιά, ενώ οι πολλαπλές κληρονομιές δεν είναι ασφαλείς στην εφαρμογή.
  3. Σε μεμονωμένα κληρονομικά χαρακτηριστικά κληρονομείται ένα κλασσικό κληρονομιά ενώ σε πολλαπλά κληρονομικά χαρακτηριστικά μπορούν να κληρονομηθούν πολλαπλά κείμενα.
  4. Η ενιαία κληρονομιά απαιτεί περισσότερο χρόνο εκτέλεσης, ενώ οι πολλαπλές κληρονομιές απαιτούν μικρότερο χρόνο εκτέλεσης

συμπέρασμα

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

Επεξηγηματικό βίντεο