Skip to main content

Τι είναι η ιεραρχία της τάξης;

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

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

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