Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 1 Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής (Αντικειμενοστρεφής Προγραμματισμός)

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
7.3.8 Μεταφραστές Ελληνογαλλική Σχολή Καλαμαρί - Τίκβα Χριστίνα.
Advertisements

Τύποι δεδομένων και τελεστές,
Computers: Information Technology in Perspective By Long and Long Copyright 2002 Prentice Hall, Inc. Λογισμικό Διάλεξη 5 η.
Ανάπτυξη Μοντέλου Ρομποτικού Οχήματος Σταθερής Τροχιάς, για Αποθήκη Κέντρου Διανομής Λιανεμπορίου ή Υπηρεσιών Logistics Γκρέμος Αναστάσιος ΠΛΣ Διπλωματική.
Πανεπιστήμιο Αιγαίου Σχολή Επιστημών της Διοίκησης Τμήμα Μηχανικών Οικονομίας & Διοίκησης Computer applications in the modern enterprise Γ. Κούζας, PhD.
ΙΩΑΝΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΥ 1ο ΦΡΟΝΤΙΣΤΗΡΙΟ ΠΑΡΑΣΚΕΥΗ 5 ΟΚΤΩΒΡΙΟΥ 2012 ΑΙΘΟΥΣΑ Β4 11.
7.5.2 Αντικειμενοστραφής προγραμματισμός
ΥΠΟΠΡΟΓΡΑΜΜΑΤΑ ΤΜΗΜΑΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
Πρόγραμμα Αναβάθμισης Προγράμματος Σπουδών Τμήματος Πληροφορικής Τ. Ε
ΗΥ 252: Αντικειμενοστρεφής Προγραμματισμός csd. uoc
Κεφάλαιο 6 Threads. 2 Στον παραδοσιακό προγραμματισμό όταν ένα πρόγραμμα εκτελείται ονομάζεται process (διεργασία) και οι εντολές του εκτελούνται σειριακά.
Εισαγωγή στον Προγραμματισμό, Αντώνιος Συμβώνης, ΣΕΜΦΕ, ΕΜΠ, Slide 1 Εβδομάδα 9: Διανύσματα και λίστες.
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Εισαγωγή στον Προγραμματισμό, Αντώνιος Συμβώνης, ΣΕΜΦΕ, ΕΜΠ, Slide 1 Εβδομάδα 3: Υλοποίηση μεθόδων.
24/11/2003Message Passing Interface (MPI)1 Αθήνα, Νοέμβριος 2003 Συστήματα Παράλληλης Επεξεργασίας Εργαστήριο Υπολογιστικών Συστημάτων.
22/11/2004Message Passing Interface (MPI)1 Αθήνα, Νοέμβριος 2004 Συστήματα Παράλληλης Επεξεργασίας Εργαστήριο Υπολογιστικών Συστημάτων.
Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 1 Week 5: Introduction to design Εβδομάδα 5: Εισαγωγή στο σχεδιασμό.
Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 1 Week 11: Intro to Applets Εβδομάδα 11: Εισαγωγή στα Applets.
Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 1 Week 6: Java Collections Εβδομάδα 6: Συλλογές δεδομένων στην Java.
Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 1 Week 10: Graphical User Interfaces Εβδομάδα 10: Εισαγωγή στα Γραφικά Περιβάλλοντα.
Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 1 Εβδομάδα 2: Υπο-τύποι και πολυμορφισμός [sub-typing and polymorphism]
Αντικειμενοστρεφής Προγραμματισμός, Αντώνιος Συμβώνης, Πανεπιστήμιο Ιωαννίνων, Slide 1 Week 13: Review Εβδομάδα 13: Ανασκόπηση.
Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 1 Week 9: Input / Output Εβδομάδα 8: Είσοδος / Έξοδος [Input / Output]
Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 1 Week 4: Exceptions Εβδομάδα 4: Εξαιρέσεις [Exceptions]
Page  1 Ο.Παλιάτσου Γαλλική Επανάσταση 1 ο Γυμνάσιο Φιλιππιάδας.
ΕΝΟΤΗΤΑ 2 – Κεφάλαιο 6: Το Γραφικό Περιβάλλον Επικοινωνίας (Γ. Π. Ε
Εισαγωγή στον Προγραμματισμό (στη γλώσσα Java)
Αντικείμενα, Κλάσεις και Μέθοδοι
Εισαγωγή στον Προγραμματισμό, Αντώνιος Συμβώνης, ΣΕΜΦΕ, ΕΜΠ, Slide 1 Εβδομάδα 7: Συμβολοσειρές.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Στατικές μέθοδοι και μεταβλητές Εσωτερικές κλάσεις.
ΗΥ 150 – ΠρογραμματισμόςΞενοφών Ζαμ π ούλης ΗΥ-150 Προγραμματισμός Αλγόριθμοι και Προγράμματα.
Προγραμματισμός ΙΙ Διάλεξη #6: Απλές Δομές Ελέγχου Δρ. Νικ. Λιόλιος.
Ενιαίο Πλαίσιο Προγράμματος Σπουδών Πληροφορικής.
Τεχνολογία ΛογισμικούSlide 1 Αλγεβρική Εξειδίκευση u Καθορισμός τύπων αφαίρεσης σε όρους σχέσεων μεταξύ τύπων λειτουργιών.
Δημιουργία Παρουσίασης
ΜΕΘΟΔΟΙ ΔΙΔΑΣΚΑΛΙΑΣ Δομιστική προσέγγιση (Ι)
Μοντέλα Συστημάτων Παρουσιάσεις των συστημάτων των οποίων οι απαιτήσεις αναλύονται.
Εισαγωγή στον Προγραμματισμό, Αντώνιος Συμβώνης, ΣΕΜΦΕ, ΕΜΠ, Slide 1 Εβδομάδα 11: Εκτέλεση Java χωρίς το BlueJ.
1 Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πανεπιστήμιο Πατρών ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ (C++) Κληρονομικότητα.
Βάσεις Δεδομένων Εργαστήριο Ι Τμήμα Πληροφορικής ΑΠΘ
ΠΛΗΡΟΦΟΡΙΑΚΑ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΚΑ ΣΥΣΤΗΜΑΤΑ 2η Εργασία Μαθήματος Γιώργος Γιαγλής Οικονομικό Πανεπιστήμιο Αθηνών Τμήμα Διοικητικής Επιστήμης & Τεχνολογίας.
1 Εισαγωγή στη Java Χρήσιμες Διευθύνσεις Χαρακτηριστικά της Java Εργαλεία της Java Εργαλεία της Java Μεταγλώττιση στοιχειωδών εφαρμογών.
Επικοινωνία Ανθρώπου Μηχανής HTML CGI JAVASCRIPT Κουμπούλης Χρήστος Α.Μ. 921 Χαλαβαζής Βασίλης Α.Μ. 988.
Διδακτική της Πληροφορικής ΗΥ302 Εργασία :Παρουσίαση σχολικού βιβλίου Γ’ Λυκείου Τεχνολογικής Κατεύθυνσης «Ανάπτυξη εφαρμογών σε προγραμματιστικό περιβάλλον»
ΑΝΑΚΕΦΑΛΑΙΩΣΗ 26 Οκτωβρίου Αντικειμενοστρεφής Προγραμματισμός Ένα νέο προγραμματιστικό μοντέλο (paradigm) το οποίο στηρίζεται στις κλάσεις και τα.
1 Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πανεπιστήμιο Πατρών ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ (C++) Τάξεις και Αφαίρεση Δεδομένων.
Προγραμματισμός Γιατι γραφουμε προγραμματα (προηγ. διαλεξη)
ΟΣΣ Δεκεμβρίου 2004 Σχεδιασμός Λογισμικού Γλώσσες Προγραμματισμού ΙΙ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ.
Τμήμα Πληροφορικής και Τηλεπικοινωνιών
1 Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πανεπιστήμιο Πατρών ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ (C++) Τάξεις και Αφαίρεση Δεδομένων.
1 Τμήμα Μηχανικών Ηλεκτρονικών Υπολογιστών και Πληροφορικής Πανεπιστήμιο Πατρών ΟΝΤΟΚΕΝΤΡΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΙΙ (C++) Τάξεις και Αφαίρεση Δεδομένων.
Applets Εκτελούνται από τον appletviewer και από Java enabled web browsers Εκμεταλλεύονται τo γραφικό υπόβαθρο που παρέχουν οι browsers, έχοντας έτσι τη.
Διάλεξη 1 Εισαγωγή Επισκόπηση άσκησης Διάλεξη 1 1 Τμήμα Πληροφορικής και Τηλεπικοινωνιών Ανάπτυξη Λογισμικού Χειμερινό Εξάμηνο
ΟΣΣ2 - 4 Δεκεμβρίου 2005 Σχεδιασμός Λογισμικού Γλώσσες Προγραμματισμού ΙΙ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ.
Προγραμματισμός & Εφαρμογές Υπολογιστών Κωδικός Μαθήματος: 2890 Κωδικός Διαφανειών: MKT130 Καθηγητής Νίκος Λορέντζος Γεωπονικό Πανεπιστήμιο Αθηνών Τμήμα.
Η εκπαίδευση δεν ήταν πάντοτε όπως σήμερα ….
Κληρονομικότητα [inheritance]
ΕΦΑΡΜΟΓΕΣ ΥΠΟΛΟΓΙΣΤΩΝ
Αντικειμενοστραφής Προγραμματισμός (Object Oriented Programming)
Wrapper Classes, Abstract Classes and Interfaces
Ενότητα 5 : Δομές Δεδομένων και αφηρημένοι
Εισαγωγή Επισκόπηση άσκησης
Κελυφοποιημένα δεδομένα [encapsulated data]
Εβδομάδα 12: Ανασκόπηση.
Προχωρημένος Προγραμματισμός
ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ
Εισαγωγή στον Προγραμματισμό (στη γλώσσα Java)
Υπο-τύποι και πολυμορφισμός
Εισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό (στη γλώσσα Java)
Κληρονομικότητα [inheritance]
Μεταγράφημα παρουσίασης:

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 1 Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής (Αντικειμενοστρεφής Προγραμματισμός) Αντώνιος Συμβώνης

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 2 Στόχοι ë Καλή γνώση βασικών αρχών προγραμματισμού ë Καλή γνώση βασικών αρχών αντικειμενοστρεφή προγραμματισμού ë Ικανότητα προγραμματισμού στη γλώσσα Java ë Καλή γνώση βασικών αρχών προγραμματισμού ë Καλή γνώση βασικών αρχών αντικειμενοστρεφή προγραμματισμού ë Ικανότητα προγραμματισμού στη γλώσσα Java

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 3 Αξιολόγηση Εργασίες*: 15% Διαγώνισμα: 85% Προσοχή: Η παρακολούθηση των εργαστηρίων και η ολοκλήρωση των ασκήσεων είναι η καλύτερη προετοιμασία για το διαγώνισμα Προσοχή: Η παρακολούθηση των εργαστηρίων και η ολοκλήρωση των ασκήσεων είναι η καλύτερη προετοιμασία για το διαγώνισμα * Απαραίτητη η ικανοποιητική συμμετοχή στο εργαστήριο

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 4 Συγγράμματα David Barnes, Michael Kolling, " Αντικειμενοστρεφής προγραμματισμός σε Java. Μια πρακτική εισαγωγή με χρήση Bluej" Εκδόσεις Κλειδάριθμος Γιώργος Λιακέας, " Εισαγωγή στη Java 2" Εκδόσεις Κλειδάριθμος Προαιρετικά “The Java Tutorial”

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 5 Σελίδα στο internet Όλες οι πληροφορίες σχετικά με το μάθημα είναι διαθέσιμες στη διεύθυνση: Ακολουθώντας τον σύνδεσμο “Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής”

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 6 Προαπαιτούμενες γνώσεις Συντακτικό της Java Τι είναι τα αντικείμενα (δεδομένα, λειτουργίες, κλάση) Πώς καλούμε τις μεθόδους Μεταβλητές Τύπους δεδομένων (int, String, char, …) Εντολές επιλογής, εντολές επανάληψης Διανύσματα BlueJ Υποθέτω ότι γνωρίζετε...

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 7 Περιεχόμενα 1Εισαγωγή στην κληρονομικότητα [inheritance] 2Πολυμορφισμός [polymorphism] 3Κλάσεις αφηρημένου τύπου [abstract classes] και διαπροσωπείες [interfaces] 4 Εξαιρέσεις [exceptions] 5Σχεδιασμός αντικειμενοστρεφών προγραμμάτων 6Κλάσεις συλλογής δεδομένων [collection classes] 7 Κλάσεις συλλογής δεδομένων (συνέχεια..) ?

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 8 Περιεχόμενα (συνέχεια) 8 Στοιχεία σχεδιασμού προγραμμάτων 9 Γραφικό περιβάλλον διασύνδεσης [GUI - Graphical User Interface] 10 Applets and GUIs (συνέχεια..) 11 GUIs (συνέχεια..) 12 Επανάληψη !

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 9 Εβδομάδα 1: Κληρονομικότητα [inheritance]

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 10 Τι είναι η κληρονομικότητα; Γιατί είναι σημαντική; Κληρονομικότητα [inheritance]

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 11 Παράδειγμα … DoME: Database of Multimedia Entertainment (Μια βάση δεδομένων με CDs και videos.) DoME: Database of Multimedia Entertainment (Μια βάση δεδομένων με CDs και videos.)

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 12 DoME: Λειτουργικότητα Εισαγωγή δεδομένων –CD: title, artist, # tracks, playing time, got-it, comment –Video: title, director, playing time, got-it, comment Εκτύπωση λιστών Αναζήτηση

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 13 Οι κλάσεις CD Video

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 14 Κελυφοποιημένα δεδομένα [encapsulated data] title artist comment #tracks title director comment gotIt αντικείμενο CDαντικείμενο Video Δεδομένα «φυλάσσονται» σε κάθε αντικείμενο

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 15 Μέθοδοι CD set...get... print αντικείμενο CDαντικείμενο Video Video set...get... print Μέθοδοι επενεργούν πάνω στο κάθε αντικείμενο

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 16 Το αντικείμενο database database CDs videos

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 17 Κώδικας Java (CD) class CD { String title; String artist; String comment; CD(String theTitle, String theArtist) { title = theTitle;artist = theArtist;comment = “ “; } void setComment(String newComment) { … } String getComment() { … } void print() { … } …} Ημιτελής (σχόλια!)

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 18 Κώδικας Java (Video) class Video { String title; String director; String comment; Video(String theTitle, String theDirector) { title = theTitle;director = theDirector;comment = “ ”; } void setComment(String newComment) { … } String getComment() { … } void print() { … } …}

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 19 Κώδικας Java (Database) class Database { CD[] myCDs; Video[] myVideos; … void print() { for(int i=0; i<myCDs.length; i++) { myCDs[i].print(); } for(int i=0; i<myVideos.length; i++) { myVideos[i].print(); } …}

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 20 Μειονεκτήματα Επανάληψη κώδικα στις κλάσεις CD και Video Επιπλέον εργασία για τροποποίηση του πηγαίου κώδικα Δυο διανύσματα και επανάληψη κώδικα στην κλάση Database Διάφορα άλλα (θα τα δούμε σύντομα…) Επανάληψη κώδικα στις κλάσεις CD και Video Επιπλέον εργασία για τροποποίηση του πηγαίου κώδικα Δυο διανύσματα και επανάληψη κώδικα στην κλάση Database Διάφορα άλλα (θα τα δούμε σύντομα…)

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 21 Η εναλλακτική λύση: κληρονομικότητα Item CD Video Σημείωση: «τετράγωνα» εικονίδια αναπαριστούν κλάσεις

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 22 Τα πεδία των κλάσεων Item CD Video title playing time gotIt comment director artist #tracks CD: title, artist, # tracks, playing time, got-it, comment Video: title, director, playing time, got-it, comment Οι υποκλάσεις [subclasses] κληρονομούν τα πεδία από τις υπερκλάσεις [superclasses].

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 23 Οι μέθοδοι των κλάσεων Item CD Video CD: CD(), getArtist(), setComment(), print() Video: Video(), getDirector(), setComment(), print() Οι υποκλάσεις κληρονομούν τις μεθόδους από τις υπερκλάσεις. setComment() print()... CD() getArtist()... Video() getDirector()...

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 24 Προεκτάσεις Item VideoGame MusicCD Video

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 25 Επιπλέον προεκτάσεις Item Game MusicCD VideoGame Video BoardGame

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 26 Ορολογία Κλάση βάσης [ base class] Υπερκλάση [superclass] Γονέας [parent] Παραγόμενη κλάση [derived class] Υποκλάση [subclass] Παιδί [child]

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 27 Πλεονεκτήματα της κληρονομικότητας Αποφυγή επανάληψης κώδικα Επαναχρησιμοποίηση κώδικα Πιο εύκολη συντήρηση κώδικα Επεκτασιμότητα [extendability]

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 28 Κώδικας Java με χρήση κληρονομικότητας class Item {... } class MusicCD extends Item {... } class Video extends Item {... }

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 29 Επίδειξη

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 30 Διάγραμμα κλάσεων [Class diagram] Item Database MusicCD Video

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 31 Διάγραμμα αντικειμένων [Object diagram] Database

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 32 Πηγαίος κώδικας (χρήστης [client] ) void list() { for (int i = 0; i < myItems.length; i++) { myItems[i].print(); }

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 33 Πλεονεκτήματα της κληρονομικότητας Αποφυγή επανάληψης κώδικα από τον χρήστη της κλάσης!

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 34 Παράκαμψη μεθόδου [Overriding, redefinition] Η μέθοδος print είναι διαφορετική για αντικείμενα τύπου MusicCD και Video Το πρόβλημα:

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 35 Video Η μέθοδος “ print ” print MusicCD CD: Triple J Hottest 100 (79 min) artist: sampler, 33 tracks double CD - great! Video: The Matrix (102 min) director: Fred Smith (not seen yet) Εκτύπωση :

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής Αντώνιος Συμβώνης, ΕΜΠ, Slide 36 Επίδειξη