Αντικειμενοστραφής Προγραμματισμός ΙΙ

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Κληρονομικότητα. Εισαγωγή  Κληρονομικότητα (Inheritance) καλείται ο μηχανισμός με τον οποίο μία νέα κλάση που ονομάζεται παράγωγη (derived class) δημιουργείται.
Advertisements

Μήτρες (templates)  Μία μήτρα είναι ένα κομμάτι κώδικα που περιέχει παραμέτρους οι οποίες δέχονται ως τιμές τύπους δεδομένων.  Είναι ένας μηχανισμός.
Ποιότητα Λογισμικού Ενότητα 6: Μέτρηση της κάλυψης των ελέγχων. Διδάσκων: Γεώργιος Κακαρόντζας, Καθηγητής Εφαρμογών. Τμήμα Μηχανικών Πληροφορικής, Τεχνολογικής.
1 Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πανεπιστήμιο Πατρών ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ (C++) Κληρονομικότητα.
Ποιότητα Λογισμικού Ενότητα 4: Παράδειγμα Ελέγχου. Διδάσκων: Γεώργιος Κακαρόντζας, Καθηγητής Εφαρμογών. Τμήμα Μηχανικών Πληροφορικής, Τεχνολογικής Εκπαίδευσης.
Εισαγωγή στον αντικειμενοστραφή προγραμματισμό Κλάσεις και αντικείμενα Κλάσεις και αντικείμενα Κατασκευαστές κλάσεων (constructors) Κατασκευαστές κλάσεων.
Ποιότητα Λογισμικού Ενότητα 2: Παραμετρικοί έλεγχοι στο JUnit. Διδάσκων: Γεώργιος Κακαρόντζας, Καθηγητής Εφαρμογών. Τμήμα Μηχανικών Πληροφορικής, Τεχνολογικής.
Εισαγωγή στον αντικειμενοστραφή προγραμματισμό
1 Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πανεπιστήμιο Πατρών ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ (C++) Πολυμορφισμός.
Τμήμα Πληροφορικής και Τηλεπικοινωνιών
1 Κεφάλαιο 2 Εισαγωγή στον αντικειμενοστραφή προγραμματισμό.
Διδακτική Πληροφορικής
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Αντικειμενοστραφής Προγραμματισμός Ι Ενότητα 4: Συμβολοσειρές και Δομές Ελέγχου. Διδάσκων: Νικόλαος Θ Λιόλιος,
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Αντικειμενοστραφής Προγραμματισμός Ι Ενότητα 9: Κληρονομικότητα. Διδάσκων: Νικόλαος Θ Λιόλιος, Καθηγητής. Τμήμα.
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Αντικειμενοστραφής Προγραμματισμός Ι Ενότητα 6: Πίνακες και Παράμετροι στην main. Διδάσκων: Νικόλαος Θ Λιόλιος,
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Αντικειμενοστραφής Προγραμματισμός Ι Ενότητα 2: Μεταβλητές και Τύποι Δεδομένων. Διδάσκων: Νικόλαος Θ Λιόλιος,
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Αντικειμενοστραφής Προγραμματισμός Ι Ενότητα 8: Κατασκευαστές. Διδάσκων: Νικόλαος Θ Λιόλιος, Καθηγητής. Τμήμα.
Αντικειμενοστραφής Προγραμματισμός Ι
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Αντικειμενοστραφής Προγραμματισμός Ι Ενότητα 10: Αφηρημένες τάξεις. Διδάσκων: Νικόλαος Θ Λιόλιος, Καθηγητής.
Ανθρωπολογία του Θεάτρου Ενότητα 4 η : Βασικές αρχές της Τέχνης του Ηθοποιού Γιώργος Σαμπατακάκης, M.Phil. (Καίμπρητζ) – Ph.D. (Λονδίνο) Τμήμα Θεατρικών.
Προγραμματισμός & Εφαρμογές Η/Υ (Θ) Ενότητα 11: Εισαγωγή στο Προγραμματισμό με το MatLab 7.x (Μέρος 2 ο ) Δρ. Β.Χ. Μούσας, Αναπληρωτής Καθηγητής Τμήμα.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ Εκπαιδευτικά Προγράμματα με Χρήση Η/Υ ΙΙ Θέμα «παιγνίδια» (website address) Διδάσκουσα: Καθηγήτρια Τζένη.
Εισαγωγή στη C# Μαρίνος Θεμιστοκλέους Ανδρούτσου 150 Γραφείο 206 Τηλ Ώρες Γραφείου: Τετάρτη 5-6 μμ.
ΥΠΟΛΟΓΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ ΓΙΑ ΣΥΣΤΗΜΑΤΑ ΜΕΤΑΔΟΣΗΣ ΠΛΗΡΟΦΟΡΙΑΣ Αντικειμενοστραφής προγραμματισμός Web Site: ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ.
Στοιχεία Μηχανών ΙΙ Ενότητα 3: Μετωπικοί τροχοί με κεκλιμένη οδόντωση – Κωνικοί οδοντωτοί τροχοί Δρ Α. Δ. Τσολάκης Τμήμα Μηχανολόγων Μηχανικών Τ.Ε. ΕΛΛΗΝΙΚΗ.
Τμήμα Τεχνολόγων Γεωπόνων Τίτλος Μαθήματος: ΚΑΛΛΩΠΙΣΤΙΚΑ ΔΕΝΤΡΑ ΚΑΙ ΘΑΜΝΟΙ Ενότητα 12: Οδηγίες δημιουργίας φυτολογίου Γρηγόριος Βάρρας Αν. Καθηγητής Άρτα,
ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ Ενότητα 12 : Η χρήση της MySQL στο Ηλεκτρονικό εμπόριο (ΙΙI) Ιωάννης Τσούλος Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου.
Ενότητα 7 : Χρήση Πινάκων στο Ηλεκτρονικό εμπόριο (I) Ιωάννης Τσούλος
Αντικειμενοστραφής Προγραμματισμός Ι
Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου
Προγραμματισμός κινητών συσκευών
Κλάσεις και αντικείμενα
Wrapper Classes, Abstract Classes and Interfaces
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Εργαστήριο 9 : Scratch (Μέρος 9_Β) Δημήτριος Νικολός ΤΕΕΑΠΗ
Τεχνολογία και Προγραμματισμός Υπολογιστών
Χρονικός Προγραμματισμός Έργων (Εργαστήριο)
ΕνΟτητα # 6: Ms Word IΙΙ CLAUDIA BOETTCHER ΤμΗμα ΙστορΙαΣ
ΠΑΡΟΥΣΙΑΣΕΙΣ ΜΑΘΗΜΑΤΟΣ ΠΙΘΑΝΟΤΗΤΕΣ(9)
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου
ΕνΟτητα # 9: Ms Word VI CLAUDIA BOETTCHER ΤμΗμα ΙστορΙαΣ
ΜΗΧΑΝΙΚΗ ΤΩΝ ΥΛΙΚΩΝ ΦΡΟΝΤΙΣΤΗΡΙΟ ΛΕΠΤΟΤΟΙΧΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Ενότητα 4 : Τελεστές της γλώσσας PHP Ιωάννης Τσούλος
Ενότητα 2 : Το σύστημα βάσεων δεδομένων MySQL (II) Ιωάννης Τσούλος
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Προγραμματισμός κινητών συσκευών
Επικοινωνιακός Προγραμματισμός Ι
Προγραμματισμός κινητών συσκευών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Αντικειμενοστραφής Προγραμματισμός ΙΙ
Αντικειμενοστραφής Προγραμματισμός ΙΙ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΡΟΥΣΙΑΣΕΙΣ ΜΑΘΗΜΑΤΟΣ ΠΙΘΑΝΟΤΗΤΕΣ(4)
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΕνΟτητα # 8: Ms Word V CLAUDIA BOETTCHER ΤμΗμα ΙστορΙαΣ
ΠΑΡΟΥΣΙΑΣΕΙΣ ΜΑΘΗΜΑΤΟΣ ΠΙΘΑΝΟΤΗΤΕΣ(5)
ΑΝΑΓΝΩΡΙΣΗ ΠΡΟΤΥΠΩΝ ΝΕΥΡΩΝΙΚΑ ΔΙΚΤΥΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Προγραμματισμός κινητών συσκευών
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Μεταγράφημα παρουσίασης:

Αντικειμενοστραφής Προγραμματισμός ΙΙ Ενότητα 13: Κληρονομικότητα Νικόλαος Θ. Λιόλιος, Καθηγητής, Τμήμα Μηχανικών Πληροφορικής Τ.Ε., T.E.I. Θεσσαλίας

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης αναφέρεται ρητώς.

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.

Σκοποί ενότητας Σκοπός μας είναι να μάθουμε: Σκοποί ενότητας Σκοπός μας είναι να μάθουμε: Βασικές τεχνικές προγραμματισμού Πώς να γράφουμε μικρού και μεσαίου μεγέθους προγράμματα Τη γλώσσα προγραμματισμού C# (μοιάζει με τη Java) Βασικούς αλγόριθμους και δομές δεδομένων Εργαλεία συγγραφής προγραμμάτων (π.χ. Visual Studio) Να διευρύνουμε τις γνώσεις μας στην Επιστήμη της Πληροφορικής Θα ασχοληθούμε πολύ με τον προγραμματισμό Θα μάθουμε το Microsoft Visual Studio . NET C# Compiler Κληρονομικότητα

Περιεχόμενα ενότητας Εισαγωγή στη κληρονομικότητα, Γιατί κληρονομικότητα; Πώς υλοποιείται η κληρονομικότητα; Κληρονομικότητα

Οι τάξεις της C# Οι τάξεις της C# έχουν διπλό ρόλο: Περιέχουν στατικές μεθόδους και στατικά δεδομένα (ιδιότητες), Χρησιμεύουν σαν πρότυπα (templates) για τη δημιουργία αντικειμένων: Τα αντικείμενα έχουν πρόσβαση σε όλα τα δεδομένα και τις μεθόδους της τάξης που έχουν προσβασιμότητα τύπου public. Οι τάξεις υποστηρίζουν: “ενθυλάκωση δεδομένων” π.χ., ιδιωτικά δεδομένα (private) , που προσθέτουν αφαιρετικότητα (abstraction), “Κληρονομικότητα (inheritance)” για επαναχρησιμοποίηση κώδικα (code reuse). Κληρονομικότητα 6

Κληρονομικότητα (1 από 2) Η κληρονομικότητα δίνει τη δυνατότητα στον προγραμματιστή να δημιουργήσει μία νέα τάξη επεκτείνοντας (κληρονομώντας) μία προϋπάρχουσα, Η προϋπάρχουσα τάξη λέγεται μητρική τάξη (parent class), ή υπερτάξη (superclass), ή βασική τάξη (base class), Η νέα τάξη που δημιουργείται κληρονομώντας κάποια άλλη λέγεται θυγατρική (child class), ή υποτάξη (subclass), ή προερχόμενη (derived class), Όπως δηλώνει και ό όρος (κληρονομώ), η θυγατρική τάξη κληρονομεί τα χαρακτηριστικά της μητρικής, Αυτό σημαίνει ότι, η θυγατρική τάξη κληρονομεί τις μεθόδους και τα δεδομένα της μητρικής. Κληρονομικότητα 7

Κληρονομικότητα (2 από 2) Σχέσεις κληρονομικότητας συχνά απεικονίζονται γραφικά σε ένα διάγραμμα τάξεων (class diagram), με το βέλος να δείχνει την μητρική τάξη Animal # weight : int + GetWeight() : int Bird + Fly() : void Κληρονομικότητα σημαίνει ότι η θυγατρική είναι μία πιο συγκεκριμένη έκδοση της μητρικής Animal Bird Κληρονομικότητα 8

Παραδείγματα: Βασικές και Θυγατρικές Τάξεις Κληρονομικότητα 9

Declaring a Derived Class Ορισμός της νέας τάξης DerivedClass πού κληρονομεί (επεκτείνει) την τάξη BaseClass class BaseClass { // περιεχόμενα της τάξης } class DerivedClass : BaseClass BaseClass: είναι η μητρική τάξη; αν παραλειφθεί το όνομα της μητρικής, τότε εννοείται ότι κληρονομούμε την τάξη Object Κληρονομικότητα 10

Έλεγχος Κληρονομικότητας Οι προσδιοριστές προσπέλασης ορίζουν ποιά μέλη της μητρικής κληρονομούνται και ποιά όχι, Μεταβλητές και μέθοδοι που δηλώθηκαν με προσβασιμότητα τύπου public κληρονομούνται, ενώ όσες δηλώθηκαν ως private δεν κληρονομούνται, Μεταβλητές και μέθοδοι που δηλώθηκαν με προσβασιμότητα τύπου protected κληρονομούνται αλλά είναι προσβάσιμες μόνο μέσα στον κώδικα της μητρικής και της θυγατρικής τάξης., Αυτό σημαίνει ότι: Δεν είναι προσβάσιμα από αντικείμενα που δημιουργούνται από τη μητρική ή τη θυγατρική τάξη. Κληρονομικότητα 11

Ο προσδιοριστής protected Book # pages : int + GetNumberOfPages() : void Dictionary - definitions : int + PrintDefinitionMessage() : void + public private # protected Κληρονομικότητα 12

Κλήση κατασκευαστών μητρικής από θυγατρικές: η αναφορά base Οι κατασκευαστές δεν κληρονομούνται, παρότι δηλώνονται ως public. Η θυγατρική μπορεί να καλεί πρώτα έναν κατασκευαστή της βασικής και μετά εκτελείται ο κώδικας του δικού της κατασκευαστή. Αν η θυγατρική δεν έχει κατασκευαστή καλείται ο προεπιλεγμένος της βασικής, Με τη χρήση του base καλούμε οποιονδήποτε κατασκευαστή της βασική επιθυμούμε. Π.Χ. public DerivedClass : BaseClass { public DerivedClass(…) : base(…) { // … } } Κληρονομικότητα 13

Ορισμός μεθόδων στις θυγατρικές που υπάρχουν στη βασική (επικάλυψη) Μια θυγατρική μπορεί να επαναπροσδιορίσει - επικαλύψει (override) μια μέθοδο που κληρονόμησε και να ορίσει δική της με το ίδιο όνομα, Η νέα μέθοδος θα πρέπει να έχει το ίδιο όνομα, τον ίδιο τύπο και αριθμό ορισμάτων, καθώς και ίδιο τύπο επιστρεφόμενης τιμής. Μπορεί όμως να έχει τον δικό της κώδικα, Ποια μέθοδος καλείται εξαρτάται από τον τύπο του αντικειμένου. Κληρονομικότητα 14

Επικάλυψη μεθόδων: Σύνταξη Η λέξη κλειδί override χρειάζεται αν μία μέθοδος της θυγατρική επαναπροσδιορίζει μία μέθοδο της βασικής, Αν θέλουμε μία μέθοδος της βασικής να επαναπροσδιορίζεται οπωσδήποτε από κάθε θυγατρική τότε η μέθοδος αυτή δηλώνεται ως virtual. Κληρονομικότητα 15

Overloading vs. Overriding Overloading deals with multiple methods in the same class with the same name but different signatures, Overloading lets you define a similar operation in different ways for different data. Overriding deals with two methods, one in a parent class and one in a child class, that have the same signature, Overriding lets you define a similar operation in different ways for different object types. Κληρονομικότητα 16

Μονή ή Πολλαπλή Κληρονομικότητα; Μερικές γλώσσες όπως για παράδειγμα η C++, επιτρέπουν πολλαπλή κληρονομικότητα (Multiple inheritance), επιτρέπουν δηλ. μία θυγατρική να κληρονομήσει δύο ή και περισσότερες βασικές, κληρονομώντας έτσι όλες τις μεταβλητές μέλη, τις ιδιότητες και τις μεθόδους. Το κυριότερο πρόβλημα είναι η ύπαρξη μεταβλητών η μεθόδων με ίδιο όνομα σε περισσότερες από μίας από τις βασικές, κάτι που είναι δύσκολο να επιλυθεί Έτσι, η C# και η Java υποστηρίζουν μονή κληρονομικότητα (single inheritance), που σημαίνει ότι μία θυγατρική μπορεί να έχει μόνο μία βασική. Κληρονομικότητα 17

Διάγραμμα Ιεραρχίας Κλάσεων Μία θυγατρική κάποιας βασικής κλάσης μπορεί με τη σειρά της να είναι η βασική για κάποια άλλη θυγατρική , έτσι μπορεί να δημιουργηθεί μία ιεραρχία κλάσεων (class hierarchy) Όχημα Δίκυκλο Τρίκυκλο Τετράτροχο Ποδήλατο Μοτοσυκλέτα Fiat Citroen Honda Κληρονομικότητα 18

Another Example: Base Classes and Derived Classes CommunityMemeber Employee Student Alumnus Faculty Staff Professor Instructor Graduate Under Κληρονομικότητα 19

Yet Another Example Shape TwoDimensionalShape ThreeDimensionalShape Sphere Cube Cylinder Triangle Square Circle Κληρονομικότητα 20

Ιεραρχία Κλάσεων Ένα μέλος που κληρονομείται στην αρχή συνεχίζει να κληρονομείται μέχρι το τέλος. Η κληρονομικότητα είναι μεταβατική (transitive), Ο καλός σχεδιασμός κλάσεων επιβάλει τον ορισμό όλων των κοινών χαρακτηριστικών όσο πιο ψηλά είναι εφικτό στην ιεραρχία των κλάσεων. Κληρονομικότητα 21

Η κλάση Object (1 από 2) Όλες οι κλάσεις στη C# κληρονομούν οπωσδήποτε την κλαση Object class, Εάν μία κλάση δεν έχει οριστεί σαν θυγατρική τότε είναι θυγατρική της Object. Η κλάση Object είναι επομένως η κορυφή (ρίζα) όλων ιεραρχιών των κλάσεων. Η κλάση Object ορίζει μεθόδους που είναι κοινές για όλα τα αντικείμενα της C#, π.χ., ToString: μετατρέπει ένα αντικείμενο σε κείμενο, Equals: ελέγχει αν δύο αντικείμενα είναι ίδια (αναφορά), GetType: επιστρέφει τον τύπο του αντικειμένου. Κληρονομικότητα 22

Η κλάση Object (2 από 2) Μία κλάση μπορεί να επαναπροσδιορίσει (override) μία μέθοδο που ορίζεται στην Object ώστε αυτή να κάνει κάτι άλλο, π.χ., Ορίζει την μέθοδο Equals έτσι ώστε να συγκρίνει το περιεχόμενο και όχι αν αναφέρεται στο ίδιο αντικείμενο στη μνήμη. Κληρονομικότητα 23

Τέλος Ενότητας