This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Next revision Both sides next revision | ||
oop:introduction [2015/01/20 13:50] gthanos [Περιεχόμενα της Κλάσης] |
oop:introduction [2015/01/20 13:55] gthanos [Κληρονομικότητα] |
||
---|---|---|---|
Line 56: | Line 56: | ||
| Στο διπλανή εικόνα παρουσιάζεται το παράδειγμα κληρονομικότητας της κλάσης του ποδηλάτου. Από την γενική κλάση του ποδηλάτου προκύπτουν δύο επιμέρους κλάσεις **α)** το ποδήλατο για δύο επιβάτες **β)** το ποδήλατο με ταχύτητες. | {{:oop:bicycle-hierarchy.png?200 |}} | | | Στο διπλανή εικόνα παρουσιάζεται το παράδειγμα κληρονομικότητας της κλάσης του ποδηλάτου. Από την γενική κλάση του ποδηλάτου προκύπτουν δύο επιμέρους κλάσεις **α)** το ποδήλατο για δύο επιβάτες **β)** το ποδήλατο με ταχύτητες. | {{:oop:bicycle-hierarchy.png?200 |}} | | ||
+ | |||
+ | ==== Διεπαφές - Interfaces ==== | ||
+ | |||
+ | Τα αντικείμενα στον πραγματικό κόσμο ορίζουν την διεπαφή τους με τον έξω κόσμο μέσα από συγκεκριμένα εργαλεία που καταλήγουν σε συγκεκριμένες πράξεις. Για παράδειγμα, | ||
+ | * τα κουμπιά του υπολογιστή ή του κινητού τηλεφώνου ή της τηλεόρασης ορίζουν τις δυνατότητες αλληλεπίδρασης με την συσκευή. | ||
+ | * το τιμόνι του ποδηλάτου ορίζει την πορεία του και η ταχύτητα κίνησης των πεταλιών ορίζει την ταχύτητα κίνησης του ποδηλάτου στον δρόμο. | ||
+ | |||
+ | Ανάλογη είναι η λειτουργία της Διεπαφής για τον αντικειμενοστραφή προγραμματισμό. Ορίζουμε μία **διεπαφή**, ως ένα σύνολο από μεθόδους, δίνοντας μόνο τους ορισμούς των μεθόδων, χωρίς την υλοποίηση τους. Εάν μία κλάση υλοποιεί ΟΛΕΣ τις μεθόδους μιας διεπαφής, τότε η κλάση είναι σύμφωνη με την συγκεκριμένη διαπεφή. Ο τρόπος που υλοποιεί κάθε κλάση τις μεθόδους της διεπαφής, είναι εσωτερικό θέμα της κλάσης και δεν ελέγχεται από την διεπαφή. Επιπλέον, μία κλάση μπορεί να υλοποιεί μία ή περισσότερες διεπαφές. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||