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

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

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

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

Βίντεο: Διαφορά μεταξύ πολλαπλής και πολυεπίπεδης κληρονομικότητας
Βίντεο: Το ταξίδι 20 χρόνια με την #πολλαπλή σκλήρυνση με τη Δρα Μαριάννα Παφίτη. Παρασκευή 24/6/2022 2024, Ιούλιος
Anonim

Βασική διαφορά – Πολλαπλή έναντι Πολυεπίπεδης κληρονομιάς

Ο Αντικειμενοστρεφής Προγραμματισμός (OOP) είναι ένα παράδειγμα για το σχεδιασμό ενός προγράμματος χρησιμοποιώντας κλάσεις και μεθόδους. Τα σενάρια του πραγματικού κόσμου μπορούν να χαρτογραφηθούν σε αντικείμενα. Επομένως, είναι εύκολο να δημιουργηθούν λύσεις λογισμικού. Μια κλάση είναι ένα σχέδιο για την κατασκευή ενός αντικειμένου. Περιέχει ιδιότητες και μεθόδους. Για παράδειγμα, πριν δημιουργήσετε ένα αντικείμενο σπουδαστών, θα πρέπει να υπάρχει ένας μαθητής τάξης με ιδιότητες και μεθόδους. Ένας μαθητής μπορεί να έχει ιδιότητες όπως αναγνωριστικό μαθητή, όνομα και μεθόδους όπως ανάγνωση, εγγραφή, μελέτη. Οι μέθοδοι περιγράφουν τη συμπεριφορά ενώ οι ιδιότητες είναι οι ιδιότητες. Μετά τη δημιουργία της κλάσης, είναι δυνατή η δημιουργία αντικειμένων χρησιμοποιώντας αυτά. Η δημιουργία αντικειμένων είναι επίσης γνωστή ως Object Instantiation. Το αντικείμενο δεν υπάρχει μεμονωμένα. Επικοινωνούν με άλλα αντικείμενα και τα δεδομένα περνούν μέσα σε αντικείμενα. Ένας πυλώνας του OOP είναι η Κληρονομικότητα. Ο σκοπός του Inheritance είναι να αυξήσει τη δυνατότητα επαναχρησιμοποίησης του κώδικα. Δημιουργεί μια νέα κατηγορία ιδιοτήτων και μεθόδων της ήδη υπάρχουσας κλάσης. Η υπάρχουσα κλάση είναι γνωστή ως κλάση βάσης και η νέα κλάση ονομάζεται παράγωγη κλάση. Η πολλαπλή κληρονομικότητα και η πολυεπίπεδη κληρονομικότητα είναι τύποι κληρονομικότητας. Αυτό το άρθρο εξετάζει τη διαφορά μεταξύ τους. Η βασική διαφορά μεταξύ Πολλαπλής και Πολυεπίπεδης Κληρονομικότητας είναι ότι η Πολλαπλή Κληρονομικότητα είναι όταν μια κλάση κληρονομεί από πολλές βασικές κλάσεις ενώ η Πολυεπίπεδη Κληρονομικότητα είναι όταν μια κλάση κληρονομεί από μια παράγωγη κλάση καθιστώντας αυτή την παραγόμενη κλάση βάση για μια νέα κλάση.

Τι είναι η πολλαπλή κληρονομικότητα;

Πολλαπλή κληρονομικότητα είναι όταν μια κλάση κληρονομεί περισσότερες από μία βασικές κλάσεις.

Διαφορά μεταξύ πολλαπλής και πολυεπίπεδης κληρονομιάς
Διαφορά μεταξύ πολλαπλής και πολυεπίπεδης κληρονομιάς

Εικόνα 01: Πολλαπλή κληρονομικότητα

Α Β και Γ είναι τάξεις. Οι Α και Β είναι βασικές κλάσεις και η C είναι η παραγόμενη κλάση. Η κλάση C πρέπει να διαχειριστεί την εξάρτηση και των δύο βασικών κλάσεων Α και Β. Οι πολλαπλές κληρονομιές δεν χρησιμοποιούνται ευρέως σε έργα λογισμικού. Κάνει το σύστημα πιο περίπλοκο επειδή μια κλάση κληρονομεί πολλές κλάσεις.

Για παράδειγμα, υποθέστε ότι η κλάση Α και Β έχουν και οι δύο μια μέθοδο με το ίδιο όνομα που είναι το sum() και η κλάση C εξάγει και τις δύο κλάσεις. Αφού δημιουργήσετε ένα αντικείμενο τύπου C και καλέσετε τη μέθοδο sum (), μπορεί να προκαλέσει σφάλμα επειδή και οι δύο κλάσεις έχουν την ίδια μέθοδο. Ο μεταγλωττιστής δεν ξέρει ποια συνάρτηση να καλέσει. Επομένως, η πολλαπλή κληρονομικότητα αυξάνει την πολυπλοκότητα ενός συστήματος. Η πολλαπλή κληρονομικότητα υποστηρίζεται σε γλώσσα C++, αλλά γλώσσες όπως η Java, η C δεν υποστηρίζουν πολλαπλή κληρονομικότητα. Αντίθετα, αυτές οι γλώσσες χρησιμοποιούν διεπαφή παρόμοια με μια τάξη αλλά δεν μπορούν να δημιουργηθούν.

Τι είναι η πολυεπίπεδη κληρονομικότητα;

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

Βασική διαφορά μεταξύ πολλαπλής και πολυεπίπεδης κληρονομιάς
Βασική διαφορά μεταξύ πολλαπλής και πολυεπίπεδης κληρονομιάς

Εικόνα 02: Πολυεπίπεδη κληρονομικότητα

Η κληρονομικότητα πολλαπλών επιπέδων έχει τρία επίπεδα. Η ενδιάμεση κλάση που κληρονομεί η Β από την κλάση Α και η κατηγορία C κληρονομεί από την κλάση Β. Η Α είναι η βασική κλάση για το Β και η Β είναι η βασική κλάση για την C.

Ένα πρόγραμμα που υλοποιεί την κληρονομικότητα πολλαπλών επιπέδων είναι το εξής. Το πρόγραμμα είναι γραμμένο χρησιμοποιώντας Java.

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

Εικόνα 03: Πρόγραμμα που υλοποιεί Πολυεπίπεδη κληρονομικότητα

Σύμφωνα με το παραπάνω πρόγραμμα, η κλάση Α είναι η βασική κλάση για την κλάση Β. Η κλάση Β είναι η βασική κλάση για την κλάση C. Όλες οι ιδιότητες και οι μέθοδοι της κλάσης Α είναι προσβάσιμες από την κλάση Β. Όλες οι ιδιότητες και οι μέθοδοι της κλάσης Το B είναι προσβάσιμο από την κλάση C. Επομένως, η κλάση C μπορεί να έχει πρόσβαση σε ιδιότητες και μεθόδους τόσο του A όσο και του B. Όταν δημιουργείτε ένα αντικείμενο τύπου C, είναι δυνατό να καλέσετε και τις τρεις μεθόδους A (), B () και C (). Η έξοδος θα δώσει A, B, C.

Ποια είναι η ομοιότητα μεταξύ πολλαπλής και πολυεπίπεδης κληρονομικότητας;

Και οι δύο είναι τύποι κληρονομικότητας

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

Πολλαπλή κληρονομιά έναντι πολυεπίπεδης κληρονομιάς

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

Σύνοψη – Πολλαπλή έναντι Πολυεπίπεδης κληρονομιάς

Η κληρονομικότητα είναι ένας σημαντικός πυλώνας του Αντικειμενοστρεφούς Προγραμματισμού. Υπάρχουν διάφοροι τύποι κληρονομιάς. είναι η κληρονομικότητα ενός επιπέδου, η κληρονομιά πολλαπλών επιπέδων, η κληρονομιά πολλαπλών επιπέδων, η ιεραρχική κληρονομιά και η υβριδική κληρονομιά. Το Single Level Inheritance έχει μία βασική και μία παραγόμενη κλάση. Η ιεραρχική κληρονομικότητα έχει μια βασική κλάση και πολλές παράγωγες κλάσεις. Η υβριδική κληρονομικότητα είναι ένας συνδυασμός πολυεπίπεδης και πολλαπλής κληρονομιάς. Αυτό το άρθρο περιέγραψε τη διαφορά μεταξύ πολλαπλής κληρονομιάς και κληρονομιάς πολλαπλών επιπέδων. Η διαφορά μεταξύ κληρονομιών πολλαπλών και πολλαπλών επιπέδων είναι ότι η πολλαπλή κληρονομικότητα είναι όταν μια κλάση κληρονομεί από πολλές βασικές κλάσεις ενώ η κληρονομικότητα πολλαπλών επιπέδων είναι όταν μια κλάση κληρονομεί από μια παραγόμενη κλάση, καθιστώντας αυτήν την παραγόμενη κλάση μια βασική κλάση για μια νέα κλάση. Η πολυεπίπεδη κληρονομικότητα χρησιμοποιείται ευρέως από την πολλαπλή κληρονομικότητα.

Λήψη του PDF Multiple vs Multilevel Inheritance

Μπορείτε να κατεβάσετε την έκδοση PDF αυτού του άρθρου και να τη χρησιμοποιήσετε για σκοπούς εκτός σύνδεσης σύμφωνα με τη σημείωση παραπομπής. Κάντε λήψη της έκδοσης PDF εδώ Διαφορά μεταξύ πολλαπλής και πολυεπίπεδης κληρονομιάς

Συνιστάται: