Skip to main content

Τι είναι η κληρονομιά της διεπαφής;

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

Ένα από τα μεγαλύτερα πλεονεκτήματα στη χρήση της κληρονομιάς διεπαφής είναι ότι επιτρέπει σε συγκεκριμένα αντικείμενα να χρησιμοποιούνται σε γενική έννοια.Δεδομένου ότι μια κλάση που εφαρμόζει μια διεπαφή είναι μια περίπτωση αυτής της διεπαφής, μπορεί να χρησιμοποιηθεί οποιοδήποτε σημείο που απαιτείται μια παρουσία αυτής της διεπαφής.Για παράδειγμα, εάν η κλάση Α εφαρμόζει την κατηγορία C και η κλάση Β εφαρμόζει επίσης την κατηγορία C, εάν μια μέθοδος διαρκεί ως παράμετρο μια εμφάνιση της κατηγορίας C, είτε μια περίπτωση της κατηγορίας Α είτε ενός παρουσίας της κατηγορίας Β θα ήταν μια αποδεκτή παράμετρος για χρήση.Οι διεπαφές δεν μπορούν να δημιουργηθούν από μόνα τους επειδή δεν είναι πλήρεις, οπότε δεν θα υπήρχε ποτέ ένα αντικείμενο που ήταν καθαρά ένα παράδειγμα της κατηγορίας C ως παράμετρος.